虽然这个内容比较简单,但是给我绕晕了
写的比较随意,给自己看的
public
这个比较简单,就是哪哪都能访问
最远的关系就是任意包的任意类任意的访问它
我拿两个包举例,分别是myabs2里的Test和myinterface里的A
这是A类
这是Test类
可以看出随便访问,直接new一个对象去访问都没问题。
其他我就不演示了,public就是任何姿势都可以访问的一个权限修饰符。
protected
这个比较让我困扰。
可以看出它不能在任意包的任意类里访问了,一开始我认为创建一个A的实例对象访问是可以的,结果报错了。因为protected
修饰符的成员可以在同一个包内的类中直接访问,也可以通过子类的实例来访问,但不能在不同包的类中通过自身的实例来直接访问。
也就是说要么在同个包里,要么是它的子类,创建一个自身的实例对象,再访问,不然就会错
这样就是有问题的,要么同包要么子类
这样就ok了
同包下也是ok的这样直接访问
缺省
这个是别的包都无法访问的情况了,比较简单理解,几张截图说明一下
这是别的包的情况,报错了
报错的内容
同个包就没事的
private
略