访问修饰符

655 阅读1分钟

修饰符

成员变量有四种修饰符
private 私有的
package/friendly/default 即不写
protected 受保护的
public 公共的


类之间的关系

自身:指的是自己
同包子类:Warrior(战士)这个类是Hero(英雄)的子类,并且和Hero处于同一个包下
不同包子类:Master(法师)这个类是Hero的子类,但是在另一个包下
同包类:Nagas(龙族)这个类和Hero是同一个包,但是彼此没有继承关系
其他类:Itemm(物品)这个类,在不同包,也没有继承关系的类


比较

自身 同包子类 不同包子类 同包类 其他类
private 可访问 不可继承 不可继承 不可访问 不可访问
package 可访问 可继承 不可继承 可访问 不可访问
protected 可访问 可继承 可继承 可访问 不可访问
public 可访问 可继承 可继承 可访问 可访问

使用

那么什么情况该用什么修饰符呢?

  1. 属性通常使用private封装起来
  2. 方法一般使用public用于被调用
  3. 会被子类继承的方法,通常使用protected

再就是作用范围最小原则
简单说,能用private就用private,不行就放大一级,用package,再不行就用protected,最后用public。 这样就能把数据尽量的封装起来。