我们知道修饰符有多个,被不同修饰符修饰的成员变量,在被访问是会有不同的权限。
自身 | 同包子类 | 不同包子类 | 同包类 | 其他类 | |
private | 访问 | 继承 | 继承 | 访问 | 访问 |
package | 访问 | 继承 | 继承 | 访问 | 访问 |
protected | 访问 | 继承 | 继承 | 访问 | 访问 |
public | 访问 | 继承 | 继承 | 访问 | 访问 |
绿色为可以访问,红色为不可以访问。从作用域来看,public适用于所有情况。但是在实际工作中,并不是所有地方都使用public。那么到底什么情况该用什么修饰符呢?
1.通常情况下,属性一般使用private封装起来;
2.方法,一般使用public修饰,因为要被调用;
3.而一些会被子类继承的方法,一般使用protected;
4.package一般用的人不多。
一般尽量遵循作用范围最小原则:就是能用private就用private,不行就放大一级,最后使用public。这样做的好处是,能把数据尽量的封装起来,没有必要露出来的,就不用露出来了。