首頁(yè)常見(jiàn)問(wèn)題正文

final在Java中有什么作用?

更新時(shí)間:2023-03-27 來(lái)源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  在Java中,final關(guān)鍵字可以用于修飾類、方法和變量。它的作用取決于它所修飾的內(nèi)容。

       1.修飾類:表示該類不能被繼承,即為最終類。

  2.修飾方法:表示該方法不能被子類重寫(xiě),即為最終方法。

  3.修飾變量:表示該變量為常量,只能被賦值一次。

  以下是一些final關(guān)鍵字在代碼中的演示:

      1.final修飾類:

final class MyClass {
    // ...
}

  上述代碼中的MyClass類被聲明為最終類,因此它不能被其他類所繼承。

  2.final修飾方法:

class MyClass {
    final void myMethod() {
        // ...
    }
}

class MySubclass extends MyClass {
    // 編譯錯(cuò)誤,不能重寫(xiě) final 方法
    void myMethod() {
        // ...
    }
}

  上述代碼中的myMethod()方法被聲明為最終方法,因此它不能被MySubclass類所重寫(xiě)。

1679881934203_java面試常見(jiàn)問(wèn)題.jpg

  3.final修飾變量:

class MyClass {
    final int MY_CONSTANT = 100;
    void myMethod() {
        // 編譯錯(cuò)誤,不能再次賦值 MY_CONSTANT
        MY_CONSTANT = 200;
    }
}

  上述代碼中的MY_CONSTANT變量被聲明為常量,因此它只能被賦值一次。在myMethod()方法中,嘗試再次給 MY_CONSTANT賦值會(huì)導(dǎo)致編譯錯(cuò)誤。

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!