java学习笔记之------final关键字
final修饰符,可以修饰类,修饰方法,修饰变量
1.final修饰的类不可以被继承,为最终类
//使用final修饰父类
final class Father{
void show(){
System.out.print(“father run”);
}
}
//继承父类
class Son extends Father{
void show1(){
System.out.print(“son run”);
}
}
public class FinalDemo{
public static void main(String args[]){
Son s = new Son();
s.show();
}
}
2.final修饰的方法不可以被覆盖
class Father{
//final修饰方法
final void show(){
System.out.print(“father run”);
}
}
//子类继承父类
class Son extends Father{
void show(){
System.out.print(“son run”);
}
}
public class FinalDemo{
public static void main(String args[]){
Son s = new Son();
s.show();
}
}
4.final修饰的变量,是一个常量,只能赋值一次
public class FinalTest{
public static void main(String args[]){
//final修饰常量
final int x = 3;
x = 4;
//System.out.print(x);
}
}
注:
final修饰的常量需要确定值,因为final会确定一个值,但不是默认值。如果不给具体的值时,程序会报错,赋值不确定
public class FinalTest{
public static void main(String args[]){
//final修饰未赋值的常量
final int x;
System.out.print(x);
}
}
使用场景:
当使用的数据不变时,需要定义阅读性强的名称来表示该数据,并将该数据final化
使用规范
被final修饰的变量名,所有字母全都大写,如果由多个单词组成,用 _ 进行分隔。