Java حول طريقة إستدعاء متغير من السوبر كلاس في جافا
في المثال التالي قمنا بتعريف كلاس إسمه A يحتوي على متغير إسمه x.
بعدها قمنا بإنشاء كلاس إسمه B يرث من الكلاس A و يحتوي على متغير إسمه x, و دالة إسمها printBoth() تطبع قيمة x الموجود في A و قيمة x الموجود في B بطريقتين.
بعدها قمنا بإنشاء الكلاس Main لتجربة الكود.
public class A { public int x = 5; }
public class B extends A { // A يرث من الكلاس B هنا قلنا أن الكلاس public int x = 20; // مع وضع قيمة مختلفة له A هنا قمنا بتعريف نفس المتغير الموجود في الكلاس public void printBoth() { // عند استدعاء هذه الدالة سيتم عرض الأشياء التالية System.out.println("x in B contain: " +x); // B الموجودة في الكلاس x هنا سيتم عرض قيمة الـ System.out.println("x in B contain: " +this.x); // B الموجودة في الكلاس x هنا سيتم عرض قيمة الـ System.out.println("x in A contain: " +super.x); // A الموجودة في الكلاس x هنا سيتم عرض قيمة الـ } }
public class Main { public static void main(String[] args) { B b = new B(); // منه printBoth() من أجل إستدعاء الدالة B هنا قمنا بإنشاء كائن من الكلاس b.printBoth(); // هنا قمنا باستدعائها } }
سنحصل على النتيجة التالية عند التشغيل.
x in B contain: 20 x in B contain: 20 x in A contain: 5