(基礎)java中的final修飾符

2021-09-01 19:58:41 字數 1678 閱讀 7512

final修飾符

final修飾常量

開發中使用final較多的地方---

用來修飾常量

當程式中使用到的資料是固定不變的,請使用final對其進行修飾!

常量名使用大寫,多個單詞間使用下劃線分割

//全域性常量

public static final double pi = 3.1415926;

//區域性常量

final int times = 10;

final修飾方法

被final修飾的方法不能被子類覆蓋

如,某個類作為父類,其中某個方法中的計算邏輯,呼叫關係是不能被子類覆蓋的。

通過final修飾符來修飾這個方法,子類將無法重寫該方法。

確保了父類中方法的永久有效。

示例:parent類中的invoke方法非常重要,不能被子類覆蓋

parent類

public class parent 

public void invoke()

}

child類,由於parent類中的invoke方法沒有被final修飾,所以,child中一旦覆蓋掉,將導致parent中定義的invoke方法失效。

public class child extends parent 

public void invoke()

}

測試**

public class test 

//執行結果:父類的invoke方法被子類覆蓋了,並沒有得到執行

/* child@1b6b7f83

do nothing!

child@1b6b7f83

do nothing!

* */

}

使用final修飾parent中的invoke方法

public class parent 

final public void invoke()

}

public class child extends parent 

//invoke()在父類中被final修飾,子類中只能使用而無法覆蓋

}

public class test 

//執行結果:父類的invoke方法被final修飾後,子類將無法對其覆蓋

/* child@1b6b7f83

do something important

child@1b6b7f83

do something important

* */

}

final修飾類

如果該類不允許被其它類繼承(繼承會破壞封裝性),使用final進行修飾;

final public class parent 

final public void invoke()

}

JAVA中final修飾引數

1 final 修飾在變數上,說明這個變數的值不能修改 final 修飾在方法上,說明這個方法在繼承後不能覆蓋.final 修飾在類上,說明這個類為終態,不能被繼承了.2 final型別修飾的引數分為兩種型別 基本型別 與 引用型別 參考 1 在呼叫的引數內部,無論是基本型別還是引用型別,其值不可改...

JAVA中的final修飾符

final 最終。作為修飾符 1 可以修飾類,變數,函式 2 被final修飾的類不可以被繼承,為了避免被繼承,被子類複寫功能 3 被final修飾的方法不可以複寫 4 被final修飾的變數是乙個常量,只能賦值一次,既可以修飾成員變數,也可以修飾區域性變數 當在描述事物時,一些資料的出現值是固定的...

java中final修飾詞的使用

關於final修飾詞 final可以修飾類 方法 變數 引數。1 修飾類。被final修飾的類將不能被繼承,因此該類中的方法將都不能被覆蓋。在開發此類時,如果確定該類中的所有方法不會被覆蓋,那麼就可以將該類用final進行修飾。不過這種方式一般採用的不多。public final class tes...