一个 Java 类可以是 final 且抽象的吗?


抽象类不可被实例化。因此,如需使用抽象类,则需要创建另一个类,并扩展该抽象类并使用它。

如果一个类为 final,则无法对其进行进一步扩展。

因此,不可将一个类同时声明为 final 和 abstract。

示例

即便如此,尝试这么做时,也会收到一个编译时错误,提示“修饰符的组合非法:”

final abstract class Demo{
   public final void display(){
      System.out.println("Hello welcome to tutorialspoint");
   }
}

输出

C:\Sample>javac Demo.java
Demo.java:1: error: illegal combination of modifiers: abstract and final
final abstract class Demo{
               ^
1 error

更新于: 2019 年 7 月 30 日

2K+ 查看

开启你的 职业生涯

通过完成本课程获得认证

开始
广告