java final 关键字

一直对final这个关键字的作用总是清晰了,又模糊,搞清晰了,又模糊。看来老人的话还是有用处的,好记性不如烂笔头,还是记录一下吧。

 
简单地来说,final变量的地址不能修改,但是里面的内容是可以修改的。相当于C语言中的指针本身不能被修改,但是指针所指的内容是可以修改的。
 
private final  List<String> list; // 声明一个变量 list
 
。。。。。。
 
list = new ArrayList<String>(); 
// 给 list 赋值
for ( int i = 0;i<100;i++){
list.add( i + "----final" );
}
 
。。。。。。。
 
list.set( 100, new String("修改 list 内容") ); // 可以修改 list 中的内容。
list .clear();
list = new ArrayList<String>(); // 编译会报错,不能修改 list 的地址。
原文地址:https://www.cnblogs.com/akira90/p/2750169.html