一直没有很清楚理解这三个修饰权限的区别,今天终于搞明白了,现总结如下:
private:最严格的一个,子类无法继承,只有本类内部内访问,在其余类及子类中通过 “类名.方法” 去调用时行不通的,因为不可见。
protected: 本类内部,同一个包内的所有类可以访问。不在同一个包时,只有通过建一个子类来继承这个类从而得到这个方法,之后通过 “子类.方法” 的形式才能访问。这样去想的话,本质上是:protected修饰的方法虽然不能被别的包里的类所访问,但是和private不同是能被子类继承,这样的话通过子类继承得到这个方法后,虽然还是受保护的权限但是却已经能被子类所在的包里所有类所访问了。
public:这个不说了,任何类都可以通过 “类名.方法” 去访问。