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

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

Java | 最终关键字 | 问题2

在 Java 中,final 关键字表示一个最终的变量、方法或类。一个使用 final 修饰的变量,一旦被赋值后就不能被改变了。

最终变量

定义一个最终变量时,需要在声明时同时初始化,否则会编译错误。最终变量必须要按照以下规则来使用:

  • 声明时必须同时初始化;
  • 可以在所有的方法内部使用;
  • 一旦被初始化后,就不能再次被赋值;
  • 数据类型可以是基本类型、对象类型或 String 类型。

例如:

final int a = 10;
final String s = "Hello";
final List<String> list = new ArrayList<>();
最终方法

使用 final 关键字修饰方法,则表示该方法不能被子类重写。这可以防止子类在不小心重写了该方法后,破坏原有的逻辑。

例如:

public class Parent {
    public final void print() {
        System.out.println("Hello");
    }
}

public class Child extends Parent {
    // 编译错误,不能重写 final 方法
    @Override
    public void print() {
        System.out.println("World");
    }
}
最终类

使用 final 修饰的类,表示该类不能被继承。这种情况下,该类的所有方法也都不能被重写。

例如:

final public class MyClass {
    // ...
}

public class ChildClass extends MyClass { // 编译错误,不能继承 final 类
    // ...
}
总结

final 关键字在 Java 中用于表示一个最终的变量、方法或类。使用时需要注意以下几点:

  • 最终变量必须在声明时同时初始化;
  • 最终方法不能被子类重写;
  • 最终类不能被继承。

在程序设计中,使用 final 关键字可以起到保护代码的作用,避免意外修改,并且提高代码的可读性和可维护性。