一、构造方法用来初始化对象的属性
public class Person{
private String name;
private int age;
//不使用构造方法的时候,用set进行赋值
public setName(String name){
this.name = name;
}
public setAge(int age){
this.age = age;
}
public String getName(){
return name;
}
public int getAge(){
return age;
}
//使用构造方法,实例化对象的时候,就进行了赋值
public Person(String name,int age){
this.name = name;
this.age = age;
}
}
//实例化对象的时候,直接赋值
Person p = new Person("adam",18);
//如果不使用构造方法,则只能使用set来赋值
p.setName("adam");
p.setAge(18);
二、构造方法的作用
在实例化对象的同时(new),对属性进行赋值
三、构造方法的定义和特点
public 方法名(参数列表){
}
特点1. 不能写返回值类型,因为根本就没有返回值。
特点2. 方法名必须和类名一致,大小写也要一样。
特点3.构造方法无须调用,在实例化对象的同时会执行一次。
public class Person{
public Person(){
System.out.println("hello");
}
}
Person p = new Person();
运行结果,输出hello。构造方法在new的同时自动执行。
特点4. 在创建类的时候(不管这个类前的修饰符是public abstract final还是其它),构造方法默认就有了。如果不写构造方法,编译器自动添加,如果程序员写了构造方法,则使用程序员书写的构造方法。
如果程序员没有书写构造方法,编译器自动添加一个空的构造方法:空参数,空方法体
public Person(){
}
四、构造方法的赋值
public class Person{
private String name;
private int age;
public Person(String name,int age){
this.name = name;
this.age = age;
}
}
//实例化的同时,给属性赋值
Person p = new Person("adam",18);
则
p.getName值为adam,p.getAge值为18