类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下俩个特点:
1)必须和类的名字相同
2)必须没有返回类型,也不能写void
构造器的作用:
1)使用new创建对象的时候必须使用类的构造器
2)构造器中的代码执行后,可以给对象中的属性初始化赋值
例如:
public class Student{
private String name;
public Student(){
name = "tom";
}
}
构造器重载:
除了无参构造器之外,很多时候我们还会使用有参构造器,在创建对象时候可以给属性赋值.
例如:
public class Student{
private String name;
public Student(String name){
this.name = name;
}
}
构造器之间的调用:
使用this关键字,在一个构造器中可以调用另一个构造器的代码。
注意:this的这种用法不会产生新的对象,只是调用了构造器中的代码而已.一般情况下只有使用new关键字才会创建新对象。
例如:
public class Student{
private String name;
public Student(){
this();
}
public Student(String name){
this.name = name;
}
}
默认构造器:
在java中,即使我们在编写类的时候没有写构造器,那么在编译之后也会自动的添加一个无参构造器,这个无参构造器也被称为默认的构造器。
例如:
public class Student{
}
main:
//编译通过,因为有无参构造器
Student s = new Student();
但是,如果我们手动的编写了一个构造器,那么编译后就不会添加任何构造器了
例如:
public class Student{
private String name;
public Student(String name){
this.name = name;
}
}
main:
//编译报错,因为没有无参构造器
Student s = new Student();