前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。
一、Java中有四種訪問權限,?其中三種有訪問權限修飾符,分別為private、public、protected,還有一種不帶任何修飾符(default)。
1.?private:?Java語言中對訪問權限限制的最窄的修飾符,一般稱之為“私有的”。被其修飾的屬性以及方法只能被該類的對象 訪問,其子類不能訪問,更不能允許跨包訪問。
2.?default:即不加任何訪問修飾符,通常稱為“默認訪問權限“或者“包訪問權限”。該模式下,只允許在同一個包中進行訪問。
3.?protected:?介于public?和?private?之間的一種訪問修飾符,一般稱之為“保護訪問權限”。被其修飾的屬性以及方法只能被類本 ? ? 身的方法及子類訪問,即使子類在不同的包中也可以訪問。
4.?public:?Java語言中訪問限制最寬的修飾符,一般稱之為“公共的”。被其修飾的類、屬性以及方法不僅可以跨類訪問,而且 ? ? 允許跨包訪問。
?
二、下面用表格來展示四種修飾符的訪問權限范圍:
?
? | 同一個類 | 同一個包 | 不同包的子類 | 不同包的非子類 |
public | √ | √ | √ | √ |
protected | √ | √ | √ | ? |
默認(default) | √ | √ | ? | ? |
private | √ | ? | ? | ? |
?
(PS:其中private和protected不能修飾一般的類,否則編譯就會報“modifier private not allowed here”,如果是內部類就另當別論了)
?
?
?
?