public-private-protected-default
2018-07-16 本文已影响0人
胖瘦馒头
对于继承自己的class的class都可以认为后者是前者的子女,而对于和自己一个目录地下的其他class,都可以认为是自己的朋友
public 表明该数据成员,成员函数是对所有用户开放的,所有用户都可以直接进行调用
private 表明私有,即除了class自己之外,任何人都不允许直接使用
protected 对于自己的子女以及朋友是public,对于其他外部的class,就相当于是private(可以在类本身、同包的子类,不同包的子类,同包的非子类 被访问)
default java的默认访问权限,当不明确写出哪种限定的时候,就是这个限定;这种限定通常为成为包访问权限,在这种权限下,类可以访问在同一个包的其他的类成员,也即可以访问朋友,在包之外,即相当于private(可以在类本身,同包的子类,同包的非子类 被访问)
同类 | 同包 | 不同包子类 | 不同包非子类 | |
---|---|---|---|---|
private | yes | |||
default | yes | yes | ||
protected | yes | yes | yes | |
public | yes | yes | yes | yes |