黑马程序员技术交流社区
标题:
关于final的问题
[打印本页]
作者:
情天不雨
时间:
2014-10-9 16:32
标题:
关于final的问题
public class TestFinal {
public static final User test = new User(10);
public static void main(String[] args) {
test.setId(1);
System.out.println(test.getId());
}
}
为什么输出的是1啊?final关键字定义的变量不是不能修改吗???????
作者:
情天不雨
时间:
2014-10-9 17:03
zengming13 发表于 2014-10-9 16:48
注意! final 定义的是变量不可变
亲,是变量不可变哦
当这个变量是基本类型时,很好理解,赋过一次值后变不 ...
所噶。。。谢大神。:P
作者:
chenglove1201
时间:
2014-10-9 17:23
学习了,原来如此
作者:
jiali
时间:
2014-10-9 17:39
final修饰的变量是只能被赋值一次,
作者:
面具猴
时间:
2014-10-9 18:09
沙发说的非常好,如果用c语言的指针来说,赋给test的是内存地址,一旦赋值就不可改变,test就一直指向这个地址,但是这个地址对应的内存中的内容是可以变的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2