黑马程序员技术交流社区
标题:
被问到的一道题:被final修饰的一个引用变量问题
[打印本页]
作者:
SYAD
时间:
2015-9-1 23:06
标题:
被问到的一道题:被final修饰的一个引用变量问题
被问到的一道题:被final修饰的一个引用变量,是引用不变,还是对象不变?
作者:
殷俊
时间:
2015-9-1 23:12
引用不变,但是内容可以变
作者:
michael_wlq
时间:
2015-9-1 23:27
引用不变,引用本身就是对象的地址
作者:
lion_good
时间:
2015-9-2 10:55
引用不能变,其引用的对象本身可以变,比如:
import org.junit.Assert;
public class Person {
public static void main(String[] args) {
Person p1 = new Person("Bob", 20);
Person p2 = new Person("Jobs", 34);
final Person pFinal = p1;
Assert.assertTrue(pFinal.age == 20);
p1.setAge(25);
Assert.assertTrue(pFinal.age == 25);
pFinal.setAge(30);
Assert.assertTrue(pFinal.age == 30);
//pFinal=p2; //ERROR
}
private String name;
private int age;
public Person(String name, int age) {
this.age = age;
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
复制代码
作者:
boboyuwu
时间:
2015-9-2 11:18
那个引用变量不能变,只能永远指向一个值
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2