super可以理解为是指向自己超(父)类对象的一个指针,而这个超类指的是离自己最近的一个父类。
super也有三种用法:
1.普通的直接引用
与this类似,super相当于是指向当前对象的父类,这样就可以用super.xxx来引用父类的成员。
2.子类中的成员变量或方法与父类中的成员变量或方法同名
publicclassCitySuperextendsCountry{
//子类中的成员变量或方法与父类中的成员变量或方法同名
/**
*可以看到,这里既调用了父类的方法,也调用了父类的变量。
*若不调用父类方法value(),只调用父类变量name的话,则父类name值为默认值null。
*/
Stringname;
voidvalue(){
name="shanghai";
super.value();//调用父类的方法
System.out.println(name);
System.out.println(super.name);
}
publicstaticvoidmain(String[]args){
CitySupercitySuper=newCitySuper();
citySuper.value();
}
}
classCountry{
Stringname;
voidvalue(){
name="China";
}
}
运行结果:
Shanghai
China
以上就是极悦java培训机构的小编针对“Java基础学习:java中super的用法”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习