构造方法说明
即为对象构建时用的方法,就是对象创建时要执行的方法。只要在new对象时,就会去执行该方法。
构造方法必须与类名相同并且没有返回值
构造器类型
1.无参构造方法
顾名思义,无参构造方法就是没有参数的构造方法~
如果类中没有自己添加的构造方法编译过程中会自动新增一个无参的构造方法
。
idea代码编辑工具中,通过按键alt+ins键选择Constructor可以快速创建构造方法~
public class DogDemo {
public DogDemo(){
//这是一个无参构造方法
}
}
2.有参构造方法
有参构造方法就是带有参数的构造方法~
如果类中自定义了一个有参构造方法,编译过程中就不会自动生成无参的构造方法,所以需要手动自行创建
public class DogDemo {
public String name;
public DogDemo(String name) {
this.name = name;
}
}
构造器作用
构造器的作用一般是用来进行对象的初始化的,在对象呗创建的过程中就会被调用。
构造器的执行顺序
如果构造器包含继承了父类,在当前类被new的过程中,会先执行父类的初始化方法->再执行本类的构造方法。如果调用的是通过有参构造方法进行初始化,也会执行父类的无参构造方法而不会去执行父类的有参方法。
public class DongwuDemo {
public String name;
public DongwuDemo(String name) {
this.name = name;
System.out.println("DongwuDemo带参初始化");
}
public DongwuDemo(){
System.out.println("DongwuDemo初始化");
}
private void into(){
}
}
public class DogDemo extends DongwuDemo{
public DogDemo(String name) {
this.name = name;
System.out.println("DogDemo带参初始化");
}
public DogDemo(){
System.out.println("DogDemo初始化");
}
private void into(){
}
public static void main(String[] args) {
DogDemo dogDemo = new DogDemo();
DogDemo dogDemo2 = new DogDemo("2");
}
}
输出结果为
DongwuDemo初始化
DogDemo初始化
DongwuDemo初始化
DogDemo带参初始化