التابع new في الصنف Class في روبي
يُنشئ التابع new صنفًا جديدًا مجهولًا غير مسمى (unnamed) من الصنف الأب ( superclass) الممرر إليه (أو من الصنف Object إن لم يمرر إليه أي شيء). يمكن إعطاء صنف ما اسمًا عن طريق تعيين كائن الصنف[(class object) وإعطائه قيمة ثابتة.
إن أعطيت كتلة برمجية، فسيُمرَّر إليها كائن الصنف (class object)، وستقدَّر الكتلة في سياق ذلك الصنف كما هو الحال مع class_eval.
عيِّن الصنف وأعطه قيمة ثابتة (يبدأ الاسم بأحرف كبيرة) إذا كنت تريد معاملته كصنف اعتيادي.
البنية العامة
new(super_class=Object) → a_class
new(super_class=Object) { |mod| ... } → a_class
القيم المعادة
يعاد صنف.
أمثلة
مثال على استخدام التابع new:
fred = Class.new do
def meth1
"hello"
end
def meth2
"bye"
end
end
a = fred.new #=> #<#<Class:0x100381890>:0x100376b98>
a.meth1 #=> "hello"
a.meth2 #=> "bye"
انظر أيضًا
- التابع
allocate: يحجز مساحةً من الذاكرة لكائن جديد من الصنفclassدون استدعاء التابعinitializeمع النسخة (instance) الجديدة. - التابع
inherited: يُستدعَى كرد نداء في كل مرة يُنشأ فيها صنف فرعي (subclass) من الصنف الحالي. - التابع
new: يستدعي التابعَallocateلإنشاء كائن جديد من الصنفclass، ثم يستدعي التابعinitializeمع ذلك الكائن المنشأ ويُمرِّر إليه وسائط محددة. - التابع
superclass: يعيد الصنف الأب (superclass) للصنف المستدعى معه.