举个例子吧
public class Dog{
String name;
public Dog(String name){
this.name=name;
}
}
public class Test {
public static void main(String[] args) {
final Dog dog=new Dog("欧欧");
dog.name="美美";
dog=new Dog("亚亚");
}
}
由以上代码可知,dog.name="美美";这行代码是正确的,dog=new Dog("亚亚");却挂了,引用型变量要区分对象的属性值和对象的引用值。总结一下,使用final修饰引用型变量,变量的值固定不变,而变量所指向的对象的属性值是可变的。 |