区别
构造方法:
用于属性初始化
setXxx方法:
可以修改属性值
若是用构造方法修改属性值,则需要另创建对象,然后赋值,但是这样的结果会使一开始的对象变成垃圾被回收。用setXxx()就能实现改变本对象的属性值
class Demond_Person {
public static void main(String[] args){
Person p1 = new Person("张三",23); //调用有参构造函数
//若想改张三名字为张美丽
p1 = new Person("张美丽",23); //这个方法使上一条创建的对象被回收,这个是新的对象,新的地址
System.out.println(p1.getName() + "..."+ p1.getAge());
Person p2 = new Person();
p2.setName = "李四";
p2.setAge = 24;
//若想改李四名字为李帅
p2.setName = "李帅"; //这个方法是在p2原本的基础上修改名字,地址不变
System.out.println(p2.getName() + "..." + p2.getAge());
}
}
class Person {
private String name;
private int age;
public Person() { // 无参构造函数
}
public Person(String name,int age) { //有参构造函数
this.name = name;
this.age = age;
}
public void setName(String name) { //设置名字
this.name = name;
}
public String getName() { //返回名字
return name;
}
public void setAge(int age) { //设置名字
this.age= age;
}
public int getAge() { //返回名字
return age;
}
}
用setXxx()方法更方便些,可以修改多次属性值,以后就经常使用这个方法了