一:何为访问权限
所谓访问权限是指对象是否可以通过".“运算操作符操作自己的变量或者通过”."运算符使用类中的方法。
二:访问权限的分类
- private
表示私有,类访问权限,只能在本类中访问,离开本类不能访问,可通过set,get访问。
使用对象:变量、方法。注意:不能修饰类(外部类)。
- 不写(缺省、友好)
包访问权限,只能在当前包中访问,否则报错。使用对象:类、接口、变量、方法。
- protected
子类访问权限,同包可以访问,但是不同包中有继承关系也可以访问。
使用对象:变量、方法。 注意:不能修饰类(外部类)。
- public
全局访问权限,可以在项目中任意位置访问。使用对象:类、接口、变量、方法
三:总结
修饰符 | 类内部 | 同一个包 | 子类 | 任何地方 |
---|---|---|---|---|
private | √ | × | × | × |
缺省 | √ | √ | 同一个包可以继承到 | × |
protected | √ | √ | √ | × |
public | √ | √ | √ | √ |
字段:一般使用private修饰,提高安全性
方法:使用public,直接暴露给外界,供外界使用
一般不使用缺省
继承关系父类需要把一个方法只暴露给子类用protected
访问权限大小:public>protected>友好>private