/*
关于修饰符:
类:public default
public protected default private
same class √ √ √ √
same package √ √ √ ×
subclass √ √ × ×
dif package √ × × ×
#但是需要注意的是:如果想使用defualt修饰方法和变量的是时候,
不需要写default,不写就是默认default
*/
import com.remoo.test.Learn09_Test;
public class Learn09{
public static void main(String[] aa){
//Remoo.P_hello=\"111\";
//System.out.println(P_hello);
//如果是private,则不能通过不同的类访问
//Remoo.hello=\"你好\";
System.out.println(Remoo.hello);//可以输出
//证明default可以通过不同类访问
System.out.println(Test.hello);//可以输出
//证明default可以在同一个包内调用
//Test.Son_Protected_hello = \"hello\";
System.out.println(Test.Son_Protected_hello);//可以输出
//通过子类访问子类自身的protected属性
System.out.println(Test.Fat_Protected_hello);//可以输出
//通过子类访问父类的protected属性
//System.out.println(Remoo.Son_Protected_hello);//不能通过父类找子类
System.out.println(Remoo.Fat_Protected_hello);//可以输出
//访问父类中的protected属性
//测试就近原则-父类子类的优先性
System.out.println(Remoo.Same_Test);//fat
System.out.println(Test.Same_Test);//son
//访问另一个包
Learn09_Test.main(null);
//System.out.println(Learn09_Test.welcomeWord1);
//System.out.println(Learn09_Test.welcomeWord2);
//System.out.println(Learn09_Test.welcomeWord3);
//上面三个都不行。只有public的才可以通过不同的包访问
System.out.println(Test1.callDifPackageProtected());
System.out.println(Learn09_Test.welcomeWord4);//public可以访问
//但是protected可以在不同包中但是有继承关系的类中使用
//要在不同包中想要访问其protected的成员,必须要继承之后才能用
System.out.println(Test.callSuperClassProtected());
}
}
class Test1 extends Learn09_Test{
static String callDifPackageProtected(){//protected可以在不同包中的继承对象中访问
return welcomeWord3;
}
//default不可以在不同包中访问
//static String callDifPackageDefault(){
// return welcomeWord2;
//}
}
class Test extends Remoo{
protected static String Son_Protected_hello=\"子类中的protected\";
static String Same_Test=\"son\";
static String callSuperClassProtected(){//子类调用父类的protected
return Fat_Protected_hello;
}
}
class Remoo{//父类
private static String P_hello = \"父类中的private\";
static String hello = \"父类中的default\";
protected static String Fat_Protected_hello=\"父类中的protected\";
static String Same_Test=\"fat\";
}
来源:https://www.cnblogs.com/remyuu/p/15987796.html
本站部分图文来源于网络,如有侵权请联系删除。