java访问修饰符的访问范围(关于Java中四种访问修饰符的理解)
今天,小编为大家整理了:Java中四种访问修饰符的理解
一起来看看
四种访问修饰符介绍
修饰符、修饰类、变量和方法可以在与其所在类同包下的其他包中访问。
受保护的修饰符、修饰的类、变量和方法可以在类中、同包下、子类中访问。
默认的修饰符、修饰的类、变量和方法都可以在类的同一个包下访问。
私有修饰符,修饰类,变量方法只能在类中访问。
四种访问修饰符的访问权限表:
1.同级下访问
name = "张三"; //被修饰符修饰的变量
性别=“男”;//受保护修饰符修饰的变量
="1999-09-09"; //默认修饰符修饰的变量
年龄 = 18;//私有修饰符修饰的变量
//判断被任意修饰符修饰的变量在同一个类中是否可以访问,调用其他类下的show方法检查是否可以正常调用出结果
无效显示(){
.out.print(姓名+" ");
.out.print(性别+" ");
.out.print(+" ");
.out.print(年龄+" ");
}
2.同包下访问
第二类{
void main([] args) {
一个 o = new One();
//--------------------------------同包下访问---------- ------------------
.out.("------------同包下访问--------------------");
.out.print(o.name+" "); //修改后的变量可以访问
.out.print(o.sex+" "); //修改后的变量可以访问
.out.(o.+" "); //修改后的变量可以访问
// .out.(o.age); 修改后的变量无法访问
//------------------------调用show()方法检查本类下所有被不同修饰符修饰的变量是否可以正常访问
.out.("---------------- 该类下修改的变量是否可以正常访问---------------- ");
哦。节目();
}
}
除了被修饰age,其他修饰符修饰的变量在同一个包下可以正常访问,同一个类下所有修饰符修饰的变量都可以正常访问。
因此:在同一个包下修改的类、变量、方法在本类中可以访问,在其他类中不能访问。
同一个包下,修改后的类、变量、方法可以在本类和其他类中访问。
3.不同包下的子类访问
.miao.test2;
.miao.test1.One;
三一课 {
void main([] args) {
三三=新的三();
//-------------------------------- 不同包下的子类访问------ ---- ------------------
.out.("------------不同包下的子类访问--------------------" );
.out.print(three.name+" "); //修改后的变量可以访问
.out.print(three.sex+" "); //修改后的变量可以访问
//.out.(three.+" "); 无法访问默认修饰符修饰的变量
//.out.(three.age); 修改后的变量无法访问
}
}
访问不同包下的子类,只能被用它们修饰的类、变量和方法访问。
因此:同一包下修改的类、变量、方法只能在本类中访问,不能在同一包下的其他类或不同包下的子类中访问。
修改后的类、变量、方法可以在同一个包下的类中访问,不能在不同包的子类下访问。
,修改后的类、变量、方法可以在同一个包下的类和不同包下的子类中访问。
4.不同包下访问
.miao.test2;
.miao.test1.One;
四级{
void main([] args) {
一个 o = new One();
//--------------------------------不同包下的访问---------- --------------
.out.("------------不同包下的访问--------------------");
.out.print(o.name+" "); //修改后的变量可以访问
// .out.print(o.sex+" "); 修改后的变量无法访问
//.out.(o.+" "); 不能访问被修饰符修饰的变量
//.out.(o.age); 修改后的变量无法访问
}
}
定论:
修改后的类、变量和方法只能在本类中访问。
(默认修饰符)修饰的类、变量、方法可以在同一个包下的类中访问。
修改后的类、变量、方法可以在同一个包下的类和不同包下的子类中访问,不同包下不能访问。
在上述所有情况下都可以访问装饰类、变量和方法。