在说明这四个关键字之前,我想就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。 

 

1、public:public表明該數據成員、成員函數是對所有用戶開放,所有用戶都可以直接進行調用 


2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。 

 

3、protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。 


作用域   當前類 同一package 子孫類 其他package 


public     √    √      √    √ 


protected   √    √     √    × 


friendly    √    √     ×      × 


private    √    ×     ×     × 

 
不寫時默認為friendly 


private 只有 跟他同一隻的 java 可以

proteced 同一個 packge 的都可以

public 都可以


設成 private 是為了不要讓別人可以直接對它做存取

設 getter setter 是為了讓別人能夠透過這個 對 private 的 field 做存取

 

 

瑞、瑪姬與小昆妮 發表在 痞客邦 留言(2) 人氣()