java有四种访问权限,
1. private 私有
2. 不用修饰符 只有包内的类才能被访问,所以有"包访问权限"的称呼
3. protected 不但包内的类可以访问,所以继承的子类也可以访问
4. public 公有,都可以访问
| 同一个类 | 同一个包 | 不同包的子类 | 不同包的非子类 |
Private | √ |
|
|
|
Default | √ | √ |
|
|
Protected | √ | √ | √ |
|
Public | √ | √ | √ | √ |
1.public: Java语言中访问限制最宽的修饰符,一般称之为“公共的”。被其修饰的类、属性以及方法不仅可以跨类访问,而且允许跨包(package)访问。
2.private: Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”。被其修饰的类、属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问。
3.protect: 介于public 和 private 之间的一种访问修饰符,一般称之为“保护形”。被其修饰的类、属性以及方法只能被类本身的方法及子类访问,即使子类在不同的包中也可以访问。
4.default:即不加任何访问修饰符,通常称为“默认访问模式“。该模式下,只允许在同一个包中进行访问。