如果我们尝试拓展 Java 中的 final 类,会发生什么?
在 Java 中,final 是访问修饰符,可用于字段类和方法。
- 如果方法是 final 的,则不能被覆盖。
- 如果变量是 final 的,则其值不能再被修改。
- 如果类是 final 的,则不能被扩展。
扩展 final 类
当我们尝试扩展 final 类时,将导致编译错误,提示“无法从 final 超类继承”
示例
在以下 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[]){
//Calling method of the superclass
new SubClass().display();
}
}编译时错误
在编译时,此程序会生成一个编译错误,如下所示:
输出
SubClass.java:7: error: cannot inherit from final SuperClass
public class SubClass extends SuperClass{
^
1 error
广告
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP