4 回答

TA貢獻1821條經(jīng)驗 獲得超6個贊
可以被子類,同package下類使用,不對外公開的訪問修飾符。寫點自以為的想法吧,java中的訪問修飾符,感覺就是人的秘密分享級別。private 個人秘密 ,default(就是不寫修飾符)社區(qū)(鄰居)秘密(在一個包【package】下的能訪問),protected 家族,社區(qū)秘密(并且遠親不如近鄰,在非static修飾下,子類不能通過new父類對象直接調(diào)用),public 社會秘密(不是秘密)。作用其實就是控制共享范圍,按照需求修飾就好。其實封裝,安全啥的,太難懂,太生硬。個人感覺,就是寫代碼的程序員,覺得不爽讓所有類使用,然后根據(jù)自己心情設(shè)定分享級別,還比較好理解,然后湊巧就符合了封裝,安全的作用。

TA貢獻1946條經(jīng)驗 獲得超4個贊
protected 關(guān)鍵字是只有這個類的字類可以訪問
default即不寫修飾符, 那就只有字類, 跟同一個包的類可以訪問
private只有類本身可以訪問
public 所有類都能訪問

TA貢獻1909條經(jīng)驗 獲得超7個贊
類NewObject中有protected修飾的方法或者屬性,則:
同一個包中:
可在同一個包里的子類中實例化NewObject類獲得對象,然后可用該對象訪問protected修飾的方法或者屬性,即.操作訪問。
可在同一個包里的非子類中實例化NewObject類獲得對象,然后可用該對象訪問protected修飾的方法或者屬性。
可在同一個包里的非子類中實例化NewObject類的子類(該子類和NewObject類在同一個包中)獲得對象,然后可用該對象訪問protected修飾的方法或者屬性。
可在同一個包里的NewObject類的子類中調(diào)用NewObject類中protected修飾的方法或者屬性,即protected修飾的方法和屬性可被同一個包中的子類繼承。
非同一個包中:
可在非同一個包里的子類中實例化NewObject類獲得對象,但無法用該對象問protected修飾的方法或者屬性。
可在非同一個包里的非子類中實例化NewObject類獲得對象,但無法用該對象問protected修飾的方法或者屬性。
可在非同一個包里的非子類中實例化NewObject類的子類(該子類和NewObject類不在同一個包中)獲得對象,但無法用該對象問protected修飾的方法或者屬性。
可在非同一個包里的NewObject類的子類中調(diào)用NewObject類中protected修飾的方法或者屬性,即protected修飾的方法和屬性可被不同一個包中的子類繼承。
添加回答
舉報