public
: public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用private
: private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女、朋友都不可以使用。protected
: protected对于子女、朋友来说就是public的,可以自由使用,没有任何限制。而对于其他的外部class,protected就变成了private.friendly
: friendly只能自己和朋友使用
作用域 | public | protected | friendly | private |
---|---|---|---|---|
当前类 | √ | √ | √ | √ |
同一package | √ | √ | √ | × |
子孙类 | √ | √ | × | × |
其他package | √ | × | × | × |