final关键字
概述
final关键字可修饰类、变量、方法,有"无法改变"或"最终"的含义,不同成员被final修饰,有着不同的特性。
final修饰类
Java中的类被final修饰后,该类将不可被继承,也就是不能派生子类。
final class A{}
class B extends A{}//报错,不能继承被final修饰的类
final修饰方法
当一个类中的方法被final修饰后,该类的子类将不能重写该方法。
class A{
public final void main1(){}
}
class B extends A{
public void main1(){}//报错,不能重写父类方法
}
final修饰变量
Java中被final修饰的变量称为常量,只能被赋值一次,也就是说final一旦被赋值就不能改变。
常量命名规范
所有字母大写,每个单词用"_"隔开,例如:"TOTAL_NUM"。
final修饰变量的情况有两种:
- final修饰局部变量
{
final int num = 1;
num = 4;//报错,只能赋值一次,第二次会报错。
}
- final修饰成员变量
class A{
final String NAME;//报错,被final修饰的变量尚未被初始化
}
这是因为虚拟机不会对final修饰的成员变量进行初始化,也就没有默认值,所以定义final修饰的成员变量的同时必须赋值。
全局常量
定义格式:
public static final 数据类型 常量名 = 数据;
浙公网安备 33010602011771号