先提下包(package),如果定義類時沒有聲明包,就表示把它放在默認(rèn)包中。
| 本類 | 同一個包下 (子類和無關(guān)類) | 不同包下 (子類) | 不同包下 (無關(guān)類) |
PRivate | y |
|
|
|
默認(rèn) | y | y |
|
|
protected | y | y | y |
|
public | y | y | y | y |
Pivate只能應(yīng)用在類的成員上;
Public可以應(yīng)用在類或類的成員上;
在局部變量上使用他們都會導(dǎo)致編譯錯誤。
Math類為了防止創(chuàng)建對象,私有了構(gòu)造方法,
private Math() {
}
另外為了避免對數(shù)據(jù)域的直接修改,可以用private把數(shù)據(jù)域聲明為私有的。這就稱為數(shù)據(jù)域封裝(data filed encapsulation)。可以定義get 和set方法來修改數(shù)據(jù)域,并且可以在set方法中限定要修改的數(shù)據(jù)的范圍。
新聞熱點(diǎn)
疑難解答