说明
- 对于
public
修饰符,它具有最大的被访问权限,可以被包内或者包外的任何类、接口、异常等访问。它往往用于对外提供服务的情况,是对象或类对外的一种接口的形式。 - 对于
protected
修饰符,它的子类可以使用它修饰的成员,其他的不可以,它相当于传递给子类的一些可以被继承的变量。 - 对于缺省(
default
)修饰符,它修饰的对象也被称为友员(friendly
)变量,它是针对本包访问而设计的,任何处于本包下的类、接口、异常等,都可以访问。 - 对于
private
修饰符,它的访问权限仅限于类的内部,是一种封装的体现。例如,大多数的成员变量都是private的,它们不希望被任何外部的类访问。
区别
- public:可以被包内或包外的所有类访问。
- protected:类内部,本包和外部包的子类可以访问。
- 缺省(default):同一包中的类可以访问,声明时不加修饰符。
- private:只能被同一个类中的成员访问。
Java修饰符的访问控制范围
修饰符 | 类内部 | 本包 | 外部包的子类 | 外部包 |
---|---|---|---|---|
public | √ | √ | √ | √ |
protected | √ | √ | √ | × |
缺省(default) | √ | √ | × | × |
private | √ | × | × | × |
10/25/2016 11:16:28 AM
This work is licensed under a CC A-S 4.0 International License.