可能使用到的final的三种情况:数据、方法、类
final数据:一块数据是恒定不变的
1.一个永不改变的编译时常量
2、一个在运行时被初始化的值,不希望被改变
对于基本类型:final使数值恒定不变
对于对象引用:final使引用恒定不变
final参数:无法在方法中更改参数引用所指向的对象,只可以读参数,却无法修改参数,这一特性主要用来向匿名内部类传递参数
final方法:
使用final方法的原因:把方法锁定,以防任何继承类修改它的含义,这是出于设计的考虑,想要确保在继承中使方法行为保持不变,并且不会被覆盖
final类
当将某个类定义为final时,就表明不打算继承该类,而且也不允许别人这样做,对该类的设计永不需要任何变动,或者出于安全考虑,不希望它有子类