类的成员变量和方法访问权限
public | protected | default | private | |
同一个类 | √ | √ | √ | √ |
同一个包 | √ | √ | √ | |
子父类 | √ | √ | ||
不同包 | √ |
这四种权限从大到小为:
public>protected>包访问权限>private
1.没有任何修饰符的权限就是包访问权限(default),意味着当前包的所有类都可以访问这个成员。对于本包之外的类,这个成员就变成了private,访问不了。
2.public修饰的成员任何一个类都可以访问到,通过操作该类的对象可以随意访问public成员。
3.protected修饰的成员可以被同一个包内该类的子类访问,继承而来的子类可以访问public,protected。
4.private除了包含这个成员的类之外,所有类都无法访问这个成员,相当于自我封闭,防止其他类改变或删除这个方法。