我有一个超类,我想在我的子类中使用该超类内的变量。这怎么可能?
如果你的变量被声明为protected
or public
(或) 你的变量有default
访问权限(在这种情况下你不指定任何关键字)并且它们在同一个包中(-->你可以直接在子类中访问它。你可以使用this
关键字(如果您很具体)。
例子:
public class A{
protected int field=1;
}
public class B extends A{
public B(){
System.out.println(this.field);
}
public static void main(String args[]){
new B();
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,变量覆盖是不可能的。如果您有一个与超类中同名的变量,那么您就无法直接访问它。那么你可以使用super
关键字。
public class A{
protected int field=1;
}
public class B extends A{
protected int field=3;
public B(){
System.out.println(this.field);
System.out.println(super.field);
}
public static void main(String args[]){
new B();
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
39642 次 |
最近记录: |