1.狀態修飾符:
static安全
靜態的意思,能夠修飾成員變量,成員方法,不能修飾類,不能修飾構造方法 被修飾的變量,方法能夠經過類名進行調用
最終的意思,能夠修飾類,成員變量,成員方法,不能修飾構造方法 修飾的類不能被繼承,被修飾的變量是常量,被修飾的方法不能被繼承
2.抽象修飾符
抽象的意思,不能修飾構造方法,不能修飾成員變量,能夠修飾類,成員方法 被修飾的類不能被實例化,只能被繼承,被修飾的成員方法在子類中必須被重寫
3.四個權限修飾符:
在JAVA當中提供了四種權限修飾符,使用不一樣的權限修飾符修飾時,被修飾的內容會有不一樣的訪問權限。ide
能夠修飾類,成員變量,成員方法,構造方法 被public修飾的成員,能夠在任何一個類中被調用,無論同包或不一樣包,是權限最大的一個修飾符
能夠修飾成員變量,成員方法,構造方法,不能修飾類(外部類,內部類不考慮) 被private修飾的成員,只能在定義它們的類中使用,在其餘類中不能調用。 若是有不一樣包的類想調用它們,那麼這個類必須是定義它們的類的子類。
類,成員變量,成員方法,構造方法都能使用默認權限,即不寫任何關鍵字 默認權限即同包權限,同包權限的元素只能在定義它們的類中使用,以及同包的類中被調用
注意事項:default並非關鍵字,「default」意思是默認不寫 根本不寫code
能夠修飾成員變量,構造方法,成員方法,不能修飾類(外部類,內部類不考慮) 被private修飾的成員,只能在定義它們的類中使用,在其餘類中不能調用。
注意:
1. 並非每一個修飾符均可以修飾類(指外部類),只有public和default能夠。 2. 全部修飾符均可以修飾數據成員,方法成員,構造方法。 3. 爲了代碼安全起見,修飾符不要儘可能使用權限大的,而是適用便可。好比, 成員變量,若是沒有特殊須要,儘量用private. 4. 修飾符修飾的是」被訪問」的權限
建議
編寫代碼代碼時建議使用: 成員變量:使用private,隱藏細節 構造方法:使用public,方便建立對象 成員方法:使用public,方便調用 備註:默認級別,是不寫的
修飾符 | 同類中 | 同一個包中(子類和無關類) | 不一樣包(子類) | 不一樣包(無關類) |
---|---|---|---|---|
public | Y | Y | Y | Y |
protected | Y | Y | Y | N |
default | Y | Y | N | N |
private | Y | N | N | N |