1.在java中关键字表示的是一个终结器的概念,使用final可以定义类、方法和变量.
1.1使用final定义的类不能有子类,即无法被其他类所继承.
final class A{
}
class B extends A{ //错误:The type B cannot subclass the final class A
}
1.2.使用final定义的方法不能被子类所覆写
class A{
public final void print(){ //无法被子类所覆写的方法
}
}
class B extends A{
public void print() {
} //错误:Cannot override the final method from A
}
1.3 使用final定义的变量,就表示常量,常量定义时必须设置默认值,并且无法修改
定义常量
如果现在使用public static 来定义常量,那么这个常量就称为全局变量.
public static final String INFO=“hello world”; //全局变量
class A{
final String INFO="hello world"; //常量
public final void print(){
INFO="world"; //错误:The final field A.INFO cannot be assigned
}
}
以上final关键字定义的3个操作,只有全局变量的概念是在开发使用,像类或方法定义使用final的情况,在自己编写代码出现不多,系统提供类会出现此类情况.
定义final常量是每个单词的字母要大写
final定义常量的单词字母全部都要求大写,全部变量概念会多次使用.