如果我们尝试在 Java 中扩展 final 类会发生什么?
java 8object oriented programmingprogramming更新于 2025/9/7 20:28:17
在 Java 中,final 是访问修饰符,可用于文件类和方法。
- 如果方法是 final 的,则无法被覆盖。
- 如果变量是 final 的,则其值无法进一步修改。
- 如果类是 final 的,则无法被扩展。
扩展 final 类
当我们尝试扩展 final 类时,会导致编译错误,提示"无法从 final 的 SuperClass 继承"
示例
在下面的 Java 程序中,我们有一个名为 SuperClass 的 final 类,我们尝试从另一个类(SubClass)继承它。
final class SuperClass{
public void display() {
System.out.println("This is a method of the superclass");
}
}
public class SubClass extends SuperClass{
public static void main(String args[]){
//调用超类方法
new SubClass().display();
}
}
编译时错误
编译时,此程序生成如下所示的编译错误−
输出
SubClass.java:7: error: cannot inherit from final SuperClass
public class SubClass extends SuperClass{
^
1 error

