super是直接父类对象
的引用
可以通过super
来访问父类中被子类覆盖的方法或属性
普通方法:
构造函数中:
super(...);
那么Java会默认都会调用super();
作为父类的初始化函数。所以你这里的super();
加不加都无所谓。package extand;
//父类
public class A {
String name;
public void eat(){
System.out.println("吃苹果");
}
}
package extand;
//子类
public class B extends A{
public void eat(){
super.eat();
}
}
package extand;
public class C {
public static void main(String[] args) {
B b = new B();
b.eat();
}
}
用途:
super.父类方法名称
super
在普通方法中使用的话,可以任意位置偏离super
在构造方法中使用的话,会调用父类的构造方法,一定要将super
放在第一行super
关键字和this
关键字不能同时出现super
关键字调用父类的无参构造方法,因此在定义类的时候,无论自己是否定义了其他构造方法,最好将无参构造方法写上小结:
Object
,是所有类的根类原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。