java中super关键字_java中super关键字有什么用法

Java中在执行子类的构造方法之前或者子类没有明确指定构造方法,会自动调用父类的无参构造方法。
(视频教程推荐:java课程)
super的三种使用情况:
访问父类方法中被覆盖的方法。
调用父类构造方法。
访问父类中的隐藏成员变量。
示例代码:class A{
int a;
A(){
a = 3;
System.out.println(a);
}
void dosomething(){
System.out.println("A");
}
}
class B extends A{
int a;
B(){
a = 5;
System.out.println(a);
}
void dosomething(){
super.dosomething();
System.out.println("B");
}
}
当在main方法中执行B b = new B();
b.dosomething();
输出结果:3
5
A
B
父类中的构造方法不能被子类继承,子类只能使用自己的构造方法或者默认的无参构造方法。
父类定义有参构造方法时,子类定义无参的构造方法的时候编译器自动添加super()会出现报错。(父类没有与之对应的无参构造方法)
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
