作用:创建对象,给对象赋初始值
构造器本身是一个方法
:没有返回值,也没有void
:构造器的方法名必须和类名一致
:在方法中定义需要初始化的参数列表,入参可有可无
默认构造器,如果类中没有带有参数的构造器,默认构造器是隐式存在的,如果类中定义了有参数的构造器,那么默认构造器就被覆盖了,如果想要使用默认构造器,则需要重新定义即可。
创建对象时用new
class Person{
String name;
int age;
char gender;
public void introduce(){
System.out.println("Hello");
}
public Person(){
this.name = "Ming";
this.age = 10;
}
public Person(String name, int age){
this(name);
this.age = age;
}
public Person(String name){
this.name = name;
}
}
class TestMain{
public static void main(String[] args){
Person p = new Person();
}
}
在构造器中对于this调用其他构造器,必须放在方法的第一行
否则报错
//error happens
public Person(String name, int age){
System.out.println("sdasd");
this(name);
this.age = age;
}