final 的含义是最终的、不可改变的。总结了一下 final 的一些规则。
1.修饰"类"则类不能被继承,所以没有子类,final类中的方法默认是final的。可以提高效率。JDK中很多加final是这个原因的。编译期确认调哪个方法,所以更快。1.5以后这样做没有效果。
2.修饰"方法"则方法不能被重写,
3.修饰"成员变量"则变量不以被改变,即被修饰成了常量。只能被赋值一次。
4.不能修饰构造方法
5.父类中的private成员方法是不能被子类覆盖的,因为private类型的方法默认是隐式final类型的
6.final 的引用不能指向新的对象。
7.形参声明为 final,则方法内不能再改变其:
1.基础数据类型值不可被修改
2.传入对象不能再被 new
8.继承关系时,final 的方法将不会被子类重写。所以父类使用的仍是本类自己的方法。
9.final 类不可被继承。
1.修饰"类"则类不能被继承,所以没有子类,final类中的方法默认是final的。可以提高效率。JDK中很多加final是这个原因的。编译期确认调哪个方法,所以更快。1.5以后这样做没有效果。
2.修饰"方法"则方法不能被重写,
3.修饰"成员变量"则变量不以被改变,即被修饰成了常量。只能被赋值一次。
4.不能修饰构造方法
5.父类中的private成员方法是不能被子类覆盖的,因为private类型的方法默认是隐式final类型的
6.final 的引用不能指向新的对象。
7.形参声明为 final,则方法内不能再改变其:
1.基础数据类型值不可被修改
2.传入对象不能再被 new
8.继承关系时,final 的方法将不会被子类重写。所以父类使用的仍是本类自己的方法。
9.final 类不可被继承。