final称为终结器,在java里面可以使用final定义类、方法、属性
1. 使用final定义的类不能再有子类
final class A{
}
class B extends A{
}//编译报错
2.使用final定义的方法不能被子类覆写
class A{
public
final void func(){
}
}
class B extends A{
public
final void func(){
}
}//编译报错
3. 使用final定义的变量为常量,常量必须在定义的时候设置好内容并且不能修改
class A{
final double
GOOD = 100.0;
public
final void func(){
GOOD = 80.0; //编译报错,不能为最终变量分配值
}
}
为了让程序中的常量与变量进行有效的区分,常量名都为大写字母;需要特别注意的是全局常量、public static final 声明的就是全局常量,
static的数据保存在公共数据区。