JAVA权限问题

本次创建3个类,包1放父类 子类1 普通类1 ,包2放子类2和普通类2

1.父类

JAVA权限问题_第1张图片

2.包内子类(子类1)

JAVA权限问题_第2张图片

当我们要定义方法时,直接会提示3个 除了私有全部都可以用

3.包内非子类的普通类

JAVA权限问题_第3张图片

4.包外子类,可以访问公共方法和保护方法,不能调用default

JAVA权限问题_第4张图片

5.包外非子类

JAVA权限问题_第5张图片

结论

显然在包中,子类和普通类权限一致,除了私有方法都可以调用
包外的话,子类可以调用public和protect方法 而不能调用default,而普通类只能调用普通类的对象,不能调用protect和default方法
所以目前看到的子类特权只是在包外比普通类能多个protect权限
JAVA权限问题_第6张图片
这里的子类,指的是包外子类

你可能感兴趣的:(java,开发语言)