根据上下文环境,Java的关键字final的含义存在着细微的差别,通常指的是:这是无法改变的。处于两种情况:设计和效率。
final使用的三种情况:数据、方法和类
1、final数据:一个永不改变的编译时常量,一个在运行时初始化的值,不希望被改变
2、空白final:被声明为final但又未给定初值的域。无论什么情况下都必须保证空白final在使用前都必须被初始化,但是空白final在关键字final的使用上提供了更大的灵活性
3、final修饰方法:把方法锁定,以方任何类修改他的含义
4、final修饰类,表明你自己不打算,也不打算让别人继承这个类