【轉】java中修飾符總結

1、訪問控制修飾符

public的訪問級別是最高的,其次是protected、默認和private

成員變量和成員方法可以處於4個訪問級別中的一個:公開、受保護、默認或私有

頂層類可以處於公開或默認級別,頂層類不能被protected和private修飾

局部變量不能被訪問控制修飾符修飾

2、abstract修飾符

抽象類不能被實例化

抽象類中可以沒有抽象方法,但包含了抽象方法的類必須被定義爲抽象方法

如果子類沒有實現父類中所有的抽象方法,子類也必須定義爲抽象類

抽象類不能被定義爲private、final、和static類型

沒有抽象的構造方法

抽象方法沒有方法體

3、final修飾符

用final修飾的類不能被繼承

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

private類型的方法都默認爲是final方法,因而不能被子類的方法覆蓋

final變量必須被顯式初始化,並且只能被賦值一次值

4、static修飾符

靜態變量在內存中只有一個拷貝,在類的所有實例中共享

在靜態方法中不能直接訪問實例方法和實例變量

在靜態方法中不能使用this和super關鍵字

靜態方法不能被abstract修飾

靜態方法和靜態變量都可以通過類名直接訪問

當類被加載時,靜態代碼塊只能被執行一次。類中不同的靜態方法代碼塊按他們在類中出現的順序被依次執行

當多個修飾符連用時,修飾符的順序可以顛倒,不過作爲普遍遵守的編程規範,通常把訪問控制修飾符放在首位,其次是static或abstact修飾符,接着就是其他的修飾符

以下修飾符連用是無意義的,會導致編譯錯誤:

abstract與private

abstract與final

abstract與static

發佈了34 篇原創文章 · 獲贊 4 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章