如何在非抽象class中访问抽象class的class变量?

How to access the class variable of abstract class in non abstract class?

我有抽象class,它在class有一个变量levele.Now我想在其他地方使用这个变量class.How我能实现吗?

以下是我的代码

public abstract class MyClass
{    
String name="John";
}

创建变量 public static 并使用 class 名称,如 -

Myclass.name

否则

public abstract class MyClass
{    
String name="John";

 String getName()
   {
      return name;
  }

}

class NewClass extends Myclass{
   //inside method 
   new NewClass().getName();
}

尝试像这样扩展 class:

public class NewClass extends MyClass {
    public NewClass() {
       System.out.println(super.name);
    }
}

公开 getter 和 setter 以便任何实例都可以访问该变量,例如:

MyNewClass clazz = new MyNewClass();
MyClass clazz = ....//child class?
clazz.getName();

由于您已经使用默认访问说明符定义了实例变量,任何 class 实例都可以使用 MyClassChildInstance.name;

访问它

注意:您定义的变量是特定于实例的,而不是 class 特定的。如果你想让它class具体那么你需要将该变量声明为静态。