final修饰的变量

2020-12-05  本文已影响0人  flyjar
//这样是可以的。默认如果不赋值,后期再赋值是可以的
final String testVal;            
testVal=new String("1231");
//这样是不可以的。默认赋值,第二次再赋值,就会报错了。
final String testVal=new String("213");
 testVal=new String("1231");

对于引用类型的对象。赋值是给栈上对象赋予一个对堆上对象的引用地址。即使对象被final修饰了。对堆上对象的值进行修改是完全可以的。只是栈上的对象 “引用地址”这个值是不能被修改了

上一篇 下一篇

猜你喜欢

热点阅读