我们创建了一个对象,在其中定义了属性,new一个对象,然后设置对应的属性,但是我们可以在new对象的时候,同时传入我们要设置的属性,这个时候就需要构造器。
特点
构造方法是一个特殊的成员方法,在定义时,需要注意:
(1)构造方法的名称必须与类名一致。
(2)构造方法名称前不能有任何返回值类型的声明。
(3)不能在构造方法中使用return返回一个值,但是可以单独写return语句作为方法的结束。
运用
public class Student {
private String name;
private int age;
//这就是构造器
public Student(String name, int age) {
this.name = name;
this.age = age;
}
}
这时我们在创建对象的时候,就可以直接输入对应的属性值。
public static void main(String[] args) {
Student student = new Student("张三", 12);
}
但是,当我们定义了一个构造器的时候,直接new一个对象的时候,会提示错误。
这是因为当我们直接new一个对象,不传入参数的参数的时候,是调用无参的构造函数,在创建一个类时,它的内部会直接存在一个无参构造函数,但由于我们定义了一个新的构造函数,内部不会再创建一个无参构造函数,就需要我们自己添加。
因此,我们一般都是将无参构造函数添加上。
public class Student {
private String name;
private int age;
public Student(){
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
}
这时候再创建对象,就不会报错。