Java受保护的变量可以在同一个包中访问而无需继承如何?
请参见以下计划和评论: 请告诉我另一个类如何在没有继承的情况下访问受保护的成员?我已经编译并运行了这个程序Java受保护的变量可以在同一个包中访问而无需继承如何?,java,inheritance,Java,Inheritance,请参见以下计划和评论: 请告诉我另一个类如何在没有继承的情况下访问受保护的成员?我已经编译并运行了这个程序 class Sample3 { final protected String Var1 = "Sample 3 Final Varaible"; final private String Var2 = "Sample 3 Final Varaible"; }//class Sample3 class Sample4 { public static void main(Str
class Sample3
{
final protected String Var1 = "Sample 3 Final Varaible";
final private String Var2 = "Sample 3 Final Varaible";
}//class Sample3
class Sample4
{
public static void main(String args[])
{
Sample3 s3=new Sample3();
//System.out.println(s3.Var2);// Line 12 : this is not accessible as the Private member is being accessed
System.out.println(s3.Var1);//Line 13 : this access the protected member but i have not used inheritance between 2 classes Sample3 and Sample4
}//end of main
}/class Sample4
Var1是类保护成员,Var2是类私有成员
我正在Sample4中创建Sample3的对象。第12行显然是一个错误,但它如何编译第13行?这是正确的行为
protected
允许成员被同一包中的所有类看到,而不仅仅是子类。请参阅。这是正确的行为protected
允许成员被同一包中的所有类看到,而不仅仅是子类。请参阅。记住按这种方式保护-默认+继承Protected
access修饰符允许访问其他包中的同一个包+子类。记住按此方式保护-默认+继承<代码>受保护访问修饰符允许在同一个包+其他包中的子类中进行访问