final修饰的变量分为基本类型和引用类型。两者最大的差别在于可操作性。
当用final修饰了一个基本类型时,如果这个变量是局部变量,则这个变量不必马上就初始化:
一旦初始化后就不能进行修改了。
当此变量是引用类型时,也是不可修改的,但可以对对象进行操作:
但不能对p进行修改。
final修饰方法时,不能对此方法进行覆盖。
final修饰类时,不能继承此类。
当用final修饰了一个基本类型时,如果这个变量是局部变量,则这个变量不必马上就初始化:
public static void main(String[] args) {
final int a;
a = 1;
System.out.println();
}
一旦初始化后就不能进行修改了。
当此变量是引用类型时,也是不可修改的,但可以对对象进行操作:
public class FinalTest {
public static void main(String[] args) {
final Person p = new Person();
p.setAge(2);
}
}
但不能对p进行修改。
final修饰方法时,不能对此方法进行覆盖。
final修饰类时,不能继承此类。