التابع 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) للصنف المستدعى معه.