Java无参构造方法的作用
无参构造函数,主要用于在子类创建对象时使用,java程序在执行子类的构造方法之前,会去调用父类构造方法,可以显示的指定super()某一个父类构造函数,如未显示指定 super(),
public class Chinese extends Person { Chinese() { super(); // 调用父类构造方法(1) prt('子类·调用父类”无参数构造方法“: '+'A chinese coder.'); }
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
系统会自动调用父类中没有参数的构造方法。
如果我子类未指定super(),而父类又未写无参构造函数将报错
因为子类继承父类的时候会自动继承默认的构造函数(这里指无参的构造函数)。
而子类里面已经有一个带有参数的构造函数了,如果没有写那个默认的不带参数的构造函数的话,继承的时候就会报错,因为系统不知道要继承哪个构造函数,必须明确的使用super()关键字来描述。
public class Parent {
public Parent(int id) {
}
}
class Child extends Parent{
public Child(int id) {
super(id);
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
1
2
3
4
5
6
7
8
9
10
11
12
13
所以一般为了避免这种错误的发生,在有带多个构造函数的类里面都会写一个不带参数的构造函数。
赞 (0)