构造方法(也称构造器)是一个特殊的成员方法,名字必须与类名相同。
作用:一般用来初始化成员属性和成员方法,即new对象产生后,就调用了对象的属性和方法。
例:
public class Student {
public String name;
public int age;
public Student() {
System.out.println("无参构造方法被调用啦!");
}
public Student(String name,int age) {
System.out.println("有两个参数的构造方法被调用啦!");
}
public static void main(String[] args) {
Student stu1 = new Student();//这里会调用无参构造方法
Student stu2 = new Student("张三",18);//这里会调用两个参数的构造方法
}
}
.方法名
"的方式给对象添加功能public class Student {
public String name;
public int age;
public Student() {
this("张三",18);//这里会调用两个参数的构造方法
System.out.println("无参构造方法被调用啦!");
}
public Student(String name,int age) {
System.out.println("有两个参数的构造方法被调用啦!");
}
public static void main(String[] args) {
Student stu1 = new Student();//这里会调用无参构造方法
}
}
为什么局部变量在使用时必须要初始化,而成员变量不用呢?
要搞清楚这个过程,就要知道new关键字背后所发生的一些事情:
在JVM层面要做以下事情:
在声明成员变量时,就直接给出了初始值。
代码编译完成后,编译器会将所有给成员初始化的这些语句添加到各个构造函数中。
tip:快速构建构造方法
空白处右键 -> Generate -> Constructor