Java中final关键字修饰方法是怎样的?

当一个类的方法被final关键字修饰后,这个类的子类将不能重写该方法。接下来通过一个案例来进行验证,如文件1所示。

文件1 Example09.java

     // 定义Animal类
     class Animal {
          // 使用final关键字修饰shout()方法
         public final void shout() {
         }
     }
     // 定义Dog类继承Animal类
     class Dog extends Animal {
          // 重写Animal类的shout()方法
         public void shout() {
         }
     }
     // 定义测试类
     public class Example09 {
         public static void main(String[] args) {
             Dog dog=new Dog(); // 创建Dog类的实例对象
         }
     }

程序编译报错,如图1所示。

图1 运行结果

文件1中,Dog类重写父类Animal中的shout()方法后,程序出现了“Cannot override the final method from Animal(无法重写父类final方法)”的错误。由此可见,被final关键字修饰的方法为最终方法,子类不能对该方法进行重写。正是由于final的这种特性,当在父类中定义某个方法时,如果不希望被子类重写,就可以使用final关键字修饰该方法。

volatile关键字的作用,看完你明白了!

使用static关键字如何定义成员变量?

Java中this关键字的常见用法有哪些?

Java中super关键字怎样使用?

传智教育java开发培训

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/java/253882.html

(0)
上一篇 2022年5月9日 03:17
下一篇 2022年5月9日 03:21

相关推荐

发表回复

登录后才能评论