黑马程序员技术交流社区
标题:
Final问题
[打印本页]
作者:
Style栉
时间:
2014-3-30 19:46
标题:
Final问题
本帖最后由 Style栉 于 2014-3-30 21:08 编辑
Final修饰一个引用变量。请问这个引用变量所指的哪个对象的数据可以改变吗。为什么
作者:
ehuashao
时间:
2014-3-30 19:59
final修饰的类与普通类几乎没有区别,只是final修饰的类不能被继承而已。
public final class FinalTest {
int a=10;
final int b=20;
public static void main(String[] args) {
FinalTest f = new FinalTest();
f.a=30;
//f.b=40; 直接显示不能对final修饰的变量赋值
System.out.println(f.a);
System.out.println(f.b);
}
}
复制代码
看上面代码,输出结果为:30 20
FinalTest是一个被final修饰的类,它内部有两个变量。一个被final修饰,一个没有。通过程序可以看出被final修饰的类中的普通成员变量时可以改变值的。但对于由final修饰的成员变量则不能。
作者:
杨殿生
时间:
2014-3-30 20:17
final:最终,作为一个修饰符
1,可以修饰类,函数,变量
2,被final修饰的类不可以被继承,为了避免被继承被子类复写功能
3,被final修饰的方法不可以被复写
4,被final修饰的变量是一个常量只能被赋值一次,既可以修饰成员变量
5,内部类定义在类中的局部位置上时,只能访问该局部被final修饰的局部变量
他并不能修饰引用变量
作者:
一诺千金
时间:
2014-3-30 22:49
被final修饰的变量是一个常量只能被赋值一次,所以就当做常量来看吧
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2