教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢(xún)/投訴熱線:400-618-4000

Java中final關(guān)鍵字修飾方法是怎樣的?

更新時(shí)間:2021年06月24日10時(shí)52分 來(lái)源:傳智教育 瀏覽次數(shù):

當(dāng)一個(gè)類(lèi)的方法被final關(guān)鍵字修飾后,這個(gè)類(lèi)的子類(lèi)將不能重寫(xiě)該方法。接下來(lái)通過(guò)一個(gè)案例來(lái)進(jìn)行驗(yàn)證,如文件1所示。

文件1 Example09.java

     // 定義Animal類(lèi)
     class Animal {
          // 使用final關(guān)鍵字修飾shout()方法
         public final void shout() {
         }
     }
     // 定義Dog類(lèi)繼承Animal類(lèi)
     class Dog extends Animal {
          // 重寫(xiě)Animal類(lèi)的shout()方法
         public void shout() {
         }
     }
     // 定義測(cè)試類(lèi)
     public class Example09 {
         public static void main(String[] args) {
             Dog dog=new Dog(); // 創(chuàng)建Dog類(lèi)的實(shí)例對(duì)象
         }
     }
程序編譯報(bào)錯(cuò),如圖1所示。

final關(guān)鍵字修飾方法

圖1 運(yùn)行結(jié)果

文件1中,Dog類(lèi)重寫(xiě)父類(lèi)Animal中的shout()方法后,程序出現(xiàn)了“Cannot override the final method from Animal(無(wú)法重寫(xiě)父類(lèi)final方法)”的錯(cuò)誤。由此可見(jiàn),被final關(guān)鍵字修飾的方法為最終方法,子類(lèi)不能對(duì)該方法進(jìn)行重寫(xiě)。正是由于final的這種特性,當(dāng)在父類(lèi)中定義某個(gè)方法時(shí),如果不希望被子類(lèi)重寫(xiě),就可以使用final關(guān)鍵字修飾該方法。





猜你喜歡:

volatile關(guān)鍵字的作用,看完你明白了!

使用static關(guān)鍵字如何定義成員變量?

Java中this關(guān)鍵字的常見(jiàn)用法有哪些?

Java中super關(guān)鍵字怎樣使用?

傳智教育java開(kāi)發(fā)培訓(xùn)

0 分享到:
和我們?cè)诰€交談!