如何使用从超类到子类的变量?
我有一个超类,我想使用这个超类内部的变量到我的子类中。这怎么可能?
只需使字段 ,这意味着它应该对所有派生类可见。protected
我有一个超类,我想使用这个超类内部的变量到我的子类中。这怎么可能?
如果您的变量被声明为或(或),您的变量具有访问权限(在这种情况下,您不使用任何关键字指定),并且它们位于同一包中(-->您可以直接在子类中访问它。如果您很具体,则可以使用关键字。protected
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();
}
}
请注意,无法覆盖变量。如果你有一个与超类同名的变量,那么你就不走运了,直接访问它。然后你可以使用关键字。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();
}
}