例如:
将变量使用final
修饰,以防止变量被覆盖或修改:
public class Main {
final int x = 10;
final double PI = 3.14;
public static void main(String[] args) {
Main myObj = new Main();
myObj.x = 50; // 会产生一个错误: cannot assign a value to a final variable
myObj.PI = 25; // 会产生一个错误: cannot assign a value to a final variable
System.out.println(myObj.x);
}
}
1、定义和用法
final
关键字可以用来修饰引用、方法和类。
1)用来修饰一个引用
如果引用为基本数据类型,则该引用为常量,该值无法修改;
如果引用为引用数据类型,比如对象、数组,则该对象、数组本身可以修改,但指向该对象或数组的地址的引用不能修改。
如果引用时类的成员变量,则必须当场赋值,否则编译会报错。
2)用来修饰一个方法
当使用final
修饰方法时,这个方法将成为最终方法,无法被子类重写。但是,该方法仍然可以被继承。
3)用来修饰类
当用final
修改类时,该类成为最终类,无法被继承。