📜  Java |最终关键字|问题1(1)

📅  最后修改于: 2023-12-03 15:31:32.894000             🧑  作者: Mango

Java | 最终关键字 | 问题1

在Java中,final关键字可以修饰类、方法和变量。本文将重点讨论final关键字对变量的影响。

final变量

在Java中,final变量表示该变量的值无法被修改。即一旦被初始化,值将保持不变。下面是一个示例:

final int x = 10;

// 编译错误:无法给final变量赋值
x = 20;

如果你尝试修改final变量的值,编译器将报错。

final方法

当将final关键字用于方法时,该方法将被称为最终方法。最终方法表示该方法无法被子类重写。例如:

class MyClass {
  final void myMethod() {
    System.out.println("MyClass");
  }
}

class MySubclass extends MyClass {
  // 编译错误:无法重写最终方法
  void myMethod() {
    System.out.println("MySubclass");
  }
}

在子类中,如果尝试重写一个最终方法,编译器将报错。

final

final关键字用于类时,表示该类无法被继承。例如:

final class MyClass {
  // ...
}

// 编译错误:FinalClass无法继承最终类MyClass
class FinalClass extends MyClass {
  // ...
}

在这个示例中,MyClass类被声明为最终类,因此无法被其他类继承。如果你尝试继承这个类,编译器将报错。

总结

final关键字可以用于变量、方法和类中,其作用分别为:

  • final变量表示该变量的值不能被修改。
  • final方法表示该方法无法被子类重写。
  • final类表示该类无法被继承。