首頁常見問題正文

final在Java中有什么作用?

更新時間:2023-07-12 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  在Java中,關(guān)鍵字final可以應(yīng)用于變量、方法和類,具有不同的作用。下面我將詳細說明每個方面的作用,并提供相關(guān)的代碼演示。

  1.final變量:

  ·當(dāng)應(yīng)用于變量時,final關(guān)鍵字表示該變量的值不能被修改,即它是一個常量。一旦為final變量分配了一個初始值,就無法再更改它。

  ·final變量必須在聲明時進行初始化,可以在聲明時直接賦值或在構(gòu)造函數(shù)中賦值。

  ·final變量通常用大寫字母命名,多個單詞之間用下劃線分隔。

  示例代碼:

public class FinalVariableExample {
    public static void main(String[] args) {
        final int MAX_COUNT = 10;
        // MAX_COUNT = 20; // 編譯錯誤,無法修改final變量的值
        System.out.println(MAX_COUNT);
    }
}

  2.final方法:

  ·當(dāng)應(yīng)用于方法時,final關(guān)鍵字表示該方法不能被子類重寫。即子類無法對final方法進行更改或擴展。

  ·final方法對于類設(shè)計的穩(wěn)定性和安全性很有用,可以防止子類改變父類的關(guān)鍵邏輯。

  示例代碼:

public class FinalMethodExample {
    public final void printMessage() {
        System.out.println("Hello, World!");
    }
}

class SubClass extends FinalMethodExample {
    // @Override // 編譯錯誤,無法重寫final方法
    public void printMessage() {
        System.out.println("This is a subclass.");
    }
}

  3.final類:

  ·當(dāng)應(yīng)用于類時,final關(guān)鍵字表示該類不能被繼承,即它是最終類,無法有子類。

  ·final類通常用于安全或設(shè)計的考慮,防止其他類對其進行擴展或修改。

  示例代碼:

public final class FinalClassExample {
    // ...
}

class SubClass extends FinalClassExample {
    // 編譯錯誤,無法繼承final類
}

  這些是final關(guān)鍵字在Java中的主要用法和作用。通過使用final關(guān)鍵字,可以實現(xiàn)常量、阻止方法重寫和類繼承等功能,從而提高代碼的可讀性、可維護性和安全性。

分享到:
在線咨詢 我要報名
和我們在線交談!