访问控制权限修饰符
Java中访问修饰符有四种,分别是public、private、protected和默认。
1.public
表示公有的,对于一个public成员,可以被任何类访问。在不同的包中,所有类都可以访问。
2.private
表示私有的,对于一个private成员,只能在同一个类中直接访问,即其他类无法访问。
3.protected
表示受保护的,对于一个protected成员,可以被同一个包中的其他类访问。不在同一个包中的其他类,只能在该类的子类中直接访问。
4.默认(不写)
对于一个不带访问修饰符的成员,只能在同一个包中的其他类访问,即该成员只对同一包中的其他类可见。
public和private是完全相反的两种访问修饰符。public意味着公共的,可以在任何地方都可以使用;而private则意味着私有的,只能在当前类中使用。
protected比默认多了一种对继承者的限制,即只有当前成员所在类的子类可以访问,其他类(包括同一包中的其他类)都无法访问。
总结:
修饰符 | 当前类 | 同 包 | 子 类 | 其他包 |
---|---|---|---|---|
public | √ | √ | √ | √ |
protected | √ | √ | √ | × |
private | √ | × | × | × |
default | √ | √ | × | × |