目录复制
Java中四种访问限定符具体如下:
访问级别 | 访问控制修饰符 | 同一个类 | 同一个包 | 子类 | 不同的包 |
---|---|---|---|---|---|
公开 | public | 是 | 是 | 是 | 是 |
受保护 | protected | 是 | 是 | 是 | – |
缺省 | default | 是 | 是 | – | – |
私有 | private | 是 | – | – | – |
上图具体解释如下:
1.public(公有)
public为公开的,被public所修饰的成员可以在任何类中都能被访问到。可以修饰类,构造方法,数据成员,方法成员。
可以被同一个类里面的其他类访问;
可以被同一个包下的类访问;
可以被不同包下的类访问;
不管是同一包还是不同包下的子类也可以访问
2.protected(受保护)
protected是受保护的,受到该类所在的包所保护。可以修饰数据成员,构造方法,方法成员,除外部类的其他类
可以被同一个类里面的其他类访问;
可以被同一个包下的类访问;
不能被不同包的类访问;
如果有不同包的类想调用它,只能通过访问重新定义它的子类来访问。
3.default(缺省)
default表示不写修饰符时,是默认值。默认为在同一个包内可以访问,包外不能访问。可以修饰类,构造方法,数据成员,方法成员。
可以被同一个类里面的类访问;
也可以被同一个包里面的类访问;
但是不能被不同包下的类访问,不管是子类还是非子类。
4.private(私有)
private是私有的,即只能在当前类中被访问到,可以修饰构造方法,数据成员,方法成员,除外部类的其他类
可以被同一个类里面其他类访问;
不能被同一包下的类访问;
不能被不同包下的其他类访问;
不管事同一个包下的子类还是不同包下的子类也都不可以访问
5.注意
四种访问限定修饰符的大小为:public>protected>default>private