黑马程序员技术交流社区

标题: 关于final赋值的问题 [打印本页]

作者: 突然世界晴    时间: 2015-4-12 23:12
标题: 关于final赋值的问题
final常量可以在定义的时候赋值,也可以在构造方法中赋值
那么请问可以在构造代码快中赋值吗?或者静态代码块中赋值吗?
作者: 君嘘    时间: 2015-4-12 23:16
可以,final的意思是只能赋值一次,无论你通过什么方法赋值。
作者: yearn    时间: 2015-4-13 10:17
可以的!
作者: 13699266500    时间: 2015-4-13 10:24
我写下final的定义,你看看就明白了!
1、用final修饰的类,不能再被继承。
2、用final修饰的方法,不能被子类重写。
3、用final修饰的变量(包括成员变量和局部变量)将变成常量,只能赋值一次。
作者: silencelj    时间: 2015-4-13 10:31
final特点:
1:这个关键字是一个修饰符,可以修饰类,方法,变量。
2:被final修饰的类是一个最终类,不可以被继承。
3:被final修饰的方法是一个最终方法,不可以被覆盖。
4:被final修饰的变量是一个常量,只能赋值一次。
作者: mah707    时间: 2015-4-13 11:55
我也看明白了,起初我一直以为只能在定义的时候就得赋值了
作者: 晓月清晖明    时间: 2015-4-13 12:15
可以的,因为final可以修饰类、方法和对象。对象可以在构造代码块和静态代码块中定义和赋值,而final只相当于一个修饰符,比如public、private等,它只是让对象具有了一定的功能,让对象只能赋值一次,所以可以的,希望对您有一定的帮助。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2