private 只能在该类的内部被访问,用于修饰属性最合适。
default包访问权限,为默认,default访问控制的成员或顶级类可以被相同包下其他类访问。
protected 子类访问权限,可以被同一个包其他类访问,也可以被部同包中的子类访问。通常使用protected来修饰一个方法,希望其子类来重写这个方法。
public 公共访问。
基本原则:
1:类里绝大部分属性都应该用private修饰,除了一些static修饰的、类似全局变量的属性,可以考虑用public,除此以外,有些方法只是铺助实现该类的其他方法,用private修饰
2:如果某个类主要用作其他类的父类,该类包含的大部分方法可能仅希望被其子类重写,而不想被外界直接调用,则应该用protected
3:希望给其他类自由调用的方法使用public