本文梳理一下Java中的四种权限修饰符
直接放出四种权限的范围,实际测试在下文。
简单创建一个学生类,我们要进行的测试的就是修改 (xxxx)String name前的括号部分。
public class Student {
private String name;//先从权限最小的private开始
public String getName() {
return name;
}
public void setName(String name){
this.name = name;
}
}
这是当前的目录情况。
同一个类:private及以上。只在当前类中访问。例如在Student文件中访问name
同一个包:default及以上。在当前day627目录下的类文件(Demo01)。
注意:test目录相当于Student类的子包,并不是同一个包。
不同包子类:protected及以上。test下的test类为Student的子类,可以通过super访问父类成员变量name。
不同包非子类:只有public修饰,相对于Student类,不同包下非子类的类才可以直接访问Student成员变量。相当于只要成员以public进行修饰,那么无论在哪里的类都可以直接访问此成员。