English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا المثال، سنتعلم كيفية إدعاء وظيفة أخرى من خلال بناء وظيفة في Java.
لفهم هذا المثال، يجب أن تكون على علم بما يليبرمجة Javaالموضوع:
class Main { int sum; //وظيفة بناء السلسلة الأولى Main() { //إدعاء وظيفة بناء السلسلة الثانية this(5, 2); } //وظيفة بناء السلسلة الثانية Main(int arg1, int arg2) { //إضافة القيمتين this.sum = arg1 + arg2; } void display() { System.out.println("المجموع: " + sum); } //فئة main public static void main(String[] args) { // دعوة إلى بناء الكائن من الفئة الأم Main obj = new Main(); //إدعاء طريقة العرض obj.display(); } }
نتائج الإخراج
المجموع: 7
في المثال السابق، تم إنشاء فئة تُدعى Main. في هذا المثال، أنشأت كلاً من وظيفتي بناء السلسلة الفرعية في فئة Main.
Main() {..} Main(int arg1, int arg2) {...}
في وظيفة بناء السلسلة الأولى، استخدمنا كلمة المفتاح this للإشارة إلى وظيفة بناء السلسلة الثانية.
this(5, 2);
في هذا المثال، يتم استدعاء وظيفة بناء السلسلة الثانية من خلال بناء وظيفة السلسلة الأولى من خلال إرسال المعلمات 5 و2.
ملاحظةالسطر الذي يُدعى من خلاله بناء وظيفة أخرى في بناء وظيفة يجب أن يكون السطر الأول في هذه الوظيفة. أي أن this(5, 2) يجب أن يكون السطر الأول في Main().
يمكننا أيضًا استخدام super()، للإشارة إلى وظيفة بناء السلسلة الرئيسية من وظيفة بناء السلسلة الفرعية.
//سلسلة رئيسية class Languages { //وظيفة بناء السلسلة الرئيسية Languages(int version1, int version2) { if (version1 > version2) { System.out.println("آحدث الإصدار هو: " + version1); } else {}} System.out.println("أحدث إصدار هو: " + version2); } } } // فئة الفرعية class Main extends Languages { // بناء الكائن من الفئة الفرعية Main() { // دعوة بناء الكائن من الفئة الأم super(11, 8); } // طريقة main public static void main(String[] args) { // دعوة إلى بناء الكائن من الفئة الأم Main obj = new Main(); } }
نتائج الإخراج
أحدث إصدار هو: 11
في المثال السابق، قمنا بإنشاء فئة أم (Languages) وفئة فرعية (Main). انتبه إلى السطر التالي في بناء الكائن من الفئة الفرعية (Main):
super(11, 8);
في هذا المثال، نحن ندعو إلى بناء الكائن من الفئة الأب (Main() من خلال بناء الكائن من الفئة الأم (Languages(int version1, int version2)))