English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

هل يمكن استخدام كلمة المفتاح super في الطريقة الثابتة في Java؟

الطرق الثابتة أو الكتل تعتبر جزءًا من الفئة، وتتم تحميلها مع الفئة إلى الذاكرة. يمكنك تنفيذ الطريقة الثابتة دون إنشاء كائن. (استخدام اسم الفئة كمرجع).

في Java، " super " كلمة المفتاح كإشارة إلى كائن الفئة الأعلى. هذا يعني أن استخدام "الطريقة" يجب أن يتم من قبل كائن يندد بطريقة هذه الطريقة، وليس الطريقة الثابتة.

لذلك، لا يمكن استخدام كلمة المفتاح " super كلمة المفتاح.

مثال

في البرنامج Java التالي، يحتوي فئة ThisExample على فئة تحتوي على طرق setter وgetter وطرق استدلالdisplay()المتغيرات الخاصةالاسممن خلال استخدام كلمة المفتاح this في طريقة main (الطريقة الثابتة)، نحاول استدلال طريقة display().

class SuperClass{
   protected String name;
}
public class SubClass extends SuperClass {
   private String name;
   public static void setName(String name) {
      super.name = name;
   }
   public void display() {
      System.out.println("name: " + super.name);
   }
   public static void main(String args[]) {
      new SubClass().display();
   }
}

خطأ في التجميع

SubClass.java:7: خطأ: غير النسبي غير يمكن الاستدلال منه من سياق ثابت
   super.name = name;
   ^
1 خطأ
مفضل لديك