四种权限修饰符。从大到小

纵向再分成四种情况

同一个类
同一个类里面。private方式,可以访问到本类里面的 num成员变量

前面不写修饰符也能访问到

(default)就是不写的这种情况

受保护的。本类的也能访问

public更可以访问了。

private说的是同一个类里面可以访问。所以只要比private大 都是可以访问的。前面三个都比private范围大


同一个包
public
定义一个MyAnother类。

MyClass和MyAnother是在同一个包内,也没有继承关系。是邻居关系

可以访问到MyClass里面的num成员变量

protected
把num改成protected

同一个包内 可以访问

default
修饰符删掉不写

也可以访问

private

num变红,表示不能访问

总结

不同包子类
现在MyClass的类是这样的

在这个包下面新建sub的子包。里面新建类MySon,继承MyClass这个父类,可以看到是需要引入对应的包的,同一个包中不需要导包语句,但是现在这两个类不在同一个包里面。

这两个类 不是在同一个包里面。

public

可以访问到父类的public的成员变量

protected


default

访问不到了

private就更不用试了
总结:

不同包非子类
创建一个Stranger陌生人类

default

不能访问

protected


public

可以访问


总结
