java中的修飾符分為類別修飾符,欄位修飾符,方法修飾符。根據功能的不同,主要分為以下幾種:
(推薦教學:java入門教學)
權限存取修飾符(可以用來修飾類別、方法和欄位)
public:對任何人都是可用的。
protect:繼承的類別可以存取以及和private一樣的權限。
default:套件存取權限,即在整個套件內均可存取。
private:除類型創建者和類型的內部方法之外的任何人都不能存取的元素。
用法彙總:
修飾類別
頂層類別只能用public 修飾,頂級類別不能使用private 和protected 修飾。
外部類別可以被public修飾或預設不寫,不能用private和protected。
內部類別可為靜態,可用protected和private修飾。
修飾方法
通常方法可以被四個存取修飾符修飾,建構方法也可以被四個存取修飾符修飾。
抽象類別中的抽象方法不能被private修飾,可以被其他三個修飾。
而介面中的方法只能被public修飾(預設也是public)。
修飾屬性
屬性可以被四個修飾符修飾,介面中的屬性只能被public修飾(預設也是public)。
修飾程式碼區塊
程式碼區塊不能被任何修飾符修飾(因為程式碼區塊裡面是屬性還有方法,這個屬性和方法都有自己的修飾符)。
建構程式碼區塊的作用:可以初始化非靜態屬性,建構程式碼區塊優先於建構函式執行,可以放在建構函式中。
靜態程式碼區塊的作用:可以初始化靜態屬性,類別載入時加載,不可以放在建構函式中。
(影片教學推薦:java影片教學)
final
修飾類別:最終類,最終類別不能被繼承。最終類別通常完成一定標準功能的類別,例如Java庫中的數學類Math等。修飾方法:用final修飾的方法不能被繼承,不能被重寫(例如Object中的wait()),但是可以重載。常數:定義局部常數用final,定義全域常數用static final (或final static)。
static
修飾類別:可以修飾內部類別修飾屬性:static可以修飾任何屬性。修飾方法:不能修飾抽象方法,不能修飾建構方法。修飾程式碼區塊:被修飾的程式碼區塊叫做靜態程式碼區塊
abstract
#修飾類別(抽象類別):抽象類別不能被實例化。抽象類別就是用來被繼承的。修飾方法(抽象方法):能被修飾的方法叫做抽象方法,只有方法的聲明,沒有方法的實現,以分號結束。不能修飾:不能修飾屬性、私有方法、建構子、靜態方法、final 方法。
abstract不可以和哪些關鍵字共存?
final:如果方法被抽象,就需要被覆寫,final修飾就不能被覆寫。
private:如果函數被私有了,子類別無法直接訪問,無法覆寫。
static:類別方法,直接呼叫抽象方法沒有意義。
以上是java修飾符知識點匯總的詳細內容。更多資訊請關注PHP中文網其他相關文章!