在Java中,final是可用于字段类和方法的访问修饰符。
当一个方法为final时,它不能被覆盖。
当变量为最终变量时,其值无法进一步修改。
当类结局时,无法扩展。
当我们尝试扩展最终类时,这将导致编译错误,提示“无法从最终超类继承”
在下面的Java程序中,我们有一个名为SuperClass的最终类,我们试图从另一个类(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