(JAVA基础)JAVA⼦类构造函数的⽅法实际问题中,JAVA⼦类的构造函数有时会出现⽆法编译通过的情况,如:
class Fu{
public int age;
Fu(int age) {
this.age = age;
}
}
class Zi extends Fu{
public int age;
Zi(int age) {
this.age = age;
}
}
则⽆法编译通过!
因为构造函数不能继承,只是调⽤⽽已。
如果⽗类没有⽆参构造函数
创建⼦类时,不能编译,除⾮在构造函数代码体中第⼀⾏,必须是第⼀⾏显式调⽤⽗类有参构造函数
如下:Zi(int age) {
如果⽗类没有⽆参构造函数
创建⼦类时,不能编译,除⾮在构造函数代码体中第⼀⾏,必须是第⼀⾏显式调⽤⽗类有参构造函数
如下:Zi(int age) {
super();
this.age = age;
}
如果不显⽰调⽤⽗类有参构造函数,系统会默认调⽤⽗类⽆参构造函数super();
但是⽗类中没有⽆参构造函数,那它不是不能调⽤了。所以编译就⽆法通过了。
如果不显⽰调⽤⽗类有参构造函数,系统会默认调⽤⽗类⽆参构造函数super();
但是⽗类中没有⽆参构造函数,那它不是不能调⽤了。所以编译就⽆法通过了。
所以必须在⽗类中增加⽆参构造函数。
>java接口有没有构造方法
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论