读书人

大家来看这个程序会是什么结果?该如

发布时间: 2012-02-26 20:19:43 作者: rapoo

大家来看,这个程序会是什么结果?
首先:

public class Person {

public String name;

public String age;

public String address;

public String getAge() {
return age;
}

public String getName() {
return name;
}

public String getAddress() {
return address;
}

public void setAge(String age) {
this.age = age;
}

public void setName(String name) {
this.name = name;
}

public void setAddress(String address) {
this.address = address;
}

}


然后:

public class Test3 {

public static void main(String[] args) {

Person person = new Person();

person.setName( "小胡同志 ");
person.setAge( "23 ");
person.setAddress( "中国北京 ");

Person person2 = new Person();
person2 = person;

person.setAddress( "美国洛杉矶 ");

System.out.println(person2.getAddress());
}
}


如果运行一下结果会是: 美国洛杉矶

问题:person2 是新new的一个对象,为什么person的属性的改变会影响到person2 ?

[解决办法]
person2 = person;之后,
这两个东西就同一个地址了,所以会变

读书人网 >J2SE开发

热点推荐