Ja v a 关键字 final 使用总结 一、f i nal 根据程序上下文环境,Java 关键字fi nal 有“这就是无法改变得"或者“终态得”含义,它可以修饰非抽象类、非抽象类成员方法与变量
您可能出于两种理解而需要阻止改变:设计或效率
fina l类不能被继承,没有子类,final 类中得方法默认就是 final 得
ﻫ f inal 方法不能被子类得方法覆盖,但可以被继承
fin a l 成员变量表示常量,只能被赋值一次,赋值后值不再改变
final 不能用于修饰构造方法
注意:父类得 pr iv at e成员方法就是不能被子类方法覆盖得,因此 pr iva t e 类型得方法默认就是fi nal 类型得
1、final 类 fi na l 类不能被继承,因此 fina l类得成员方法没有机会被覆盖,默认都就是 fi n al 得
在设计类时候,假如这个类不需要有子类,类得实现细节不允许改变,并且确信这个类不会载被扩展,那么就设计为 f in a l类
2、final 方法 假如一个类不允许其子类覆盖某个方法,则可以把这个方法声明为 final方法
使用f i na l 方法得原因有二:ﻫ 第一、把方法锁定,防止任何继承类修改它得意义与实现
ﻫ 第二、高效
编译器在遇到调用f ina l方法时候会转入内嵌机制,大大提高执行效率
例如:pu b l ic cl as s T est1 { ﻫpub l i c static void m ai n(St r i n g[] a rgs) { // TO DO 自动生成方法存根 ﻫ} pu bli c vo i d f 1() { ﻫ Sy ste m、out、pr i ntln(”f 1"); ﻫ} //无法被子类覆盖得方法 pu b lic fi n al void f2() { ﻫ System、