Publicprotectedprivate解析<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Public成员可以被同一个类或同一个包或不同包下的类都可以访问。

Protected成员可以被同一个类或同一个包下的类可以访问,不能被不同包下的类访问。

Private成员可以被于同一个类访问,不能被同一个包或不同包下的类访问。

 

                 同类        同包    不同包子类     不同包非子类
private        yes
default         yes              yes
protected    yes              yes            yes  
public          yes             yes           yes                      yes

 

特别说明一点protected在不同包子类下为yes的情况:

包外子类有权访问父类成员是什么意思?它指子类继承该成员。 然而,这不意味着包外子类能够使用父类实例的引用访问该成员。 换句话说,保护=继承。 保护不是指子类能够处理受保护的父类成员,就好像它是公有的那样。 因此,如果包外子类获得父类引用,该子类不能在父类引用上使用点运算符来.访问受保护的成员。 子类只能通过继承看到受保护的成员。(大家可以自己试试看)