访问控制符主要用于定义类的属性或方法对于其它类的访问权限。Java中提供了四种访问控制符,按照权限由大到小分别为公有(Public)、受保护(Protected)、朋友(Friendly)和私有(Private)。
- Public: 公共访问权限。如果类中的属性或方法被public修饰,则此类中的属性或方法可以被任何类调用。
- Protected: 子类访问权限。如果类中属性或方法被protected修饰符修饰,则此类中属性或方法可以被同一包下的类使用,也可以被不同包下的子类使用,但不能被不同包下的其他类使用。
- Friendly: 包访问权限。如果类中属性或方法不使用public,protected,privete修饰符修饰时,则说明其具有包访问权限,具有包访问权限的属性或方法既可以被自己类中的方法使用也可以被同一包下的其他类使用,但不能被其他包中的类使用。
- Private: 私有访问权限,表示此成员或方法只能被自己类中的方法使用,而不能被外部类或对象直接使用。
用表格直观表现如下:
同类 | 同包 | 子类 | 全局 | |
---|---|---|---|---|
Public | √ | √ | √ | √ |
Protected | √ | √ | √ | × |
Friendly | √ | √ | × | × |
Private | √ | × | × | × |