訪問修飾符
public | protected | 無 | private | |
---|---|---|---|---|
同一類中 | 可以 | 可以 | 可以 | 可以 |
同一包中 | 可以 | 可以 | 可以 | 不可以 |
子類 | 可以 | 可以 | 不可以 | 不可以 |
不同包中 | 可以 | 不可以 | 不可以 | 不可以 |
static關鍵字
可以修飾變量和方法
(1)被修飾的靜態成員可以直接通過類名調用
(2)靜態成員優先於對象存在,隨着類的加載而加載進方法區
(3)靜態方法只能訪問靜態成員,不能訪問非靜態成員(可以通過new對象再調用非靜態成員)。反之可以(但建議直接使用類名調用)
(4)靜態方法中不能出現this、super關鍵字,並且不能被重寫
(5)靜態變量被所有對象共享,無論類加載幾次都是同一個
final關鍵字
可以修飾類、方法和變量
(1)修飾類時,類不可以被繼承,final類的所有成員方法會被隱式的指定爲final
(2)修飾方法時,方法不能被重寫
(3)修飾變量時,如果是基本數據類型的變量則其值不能被改變,如果是引用類型的變量,則初始化後不能再指向另一個對象(但是對象的內容可以被改變)
被final修飾的變量名稱規範:全字母大寫以下劃線區分單詞