java提供四种访问修控制饰符符号,用于控制方法和属性(成员变量)的访问权限(范围);
- 公开级别:用public修饰,对外公开。
- 受保护级别:用protected修饰,对子类和同一个包中的类公开。
- 默认级别:没有修饰符号,向同一个包的类公开。
- 私有级别:用private修饰,只有类本身可以访问,不对外公开。
Java中有四种访问权限,分别是「public、protected、包访问权限(默认)、private」,如果省略了访问修饰符,那默认访问权限为「包访问权限」。
这四种权限从「最大权限」到「最小权限」分别是:
public > protected > 包访问权限> private
「包访问权限:」 没有任何修饰符的权限就是「包访问权限」,意味着当前包的所有类都可以访问这个成员,如表中所示,对于本包之外的类,这个成员就变成了「private」,访问不了
「public:」 被public修饰的成员对任意一个类都是可用的,任何一个类都可以访问到,通过操作该类的对象随意访问「public」成员
「protected:」 在相同的class内部,同一个包内和其他包的子类中能被访问。要理解「protected」权限,就需要了解「继承」,因为这个权限处理的就是继承相关的概念,继承而来的子类可以访问「public、protected」
「private:」 除了包含这个成员的类之外,所有类都无法访问这个成员,相当于自我封闭,防止其他类改变或删除这个方法