【发布时间】:2014-04-22 10:42:25
【问题描述】:
public class MyTest {
public static void main(String str[]){
Info i=new Info();
i.value=20;
System.out.println("Integer value is :"+i.value);
}
}
class Info {
int value;
protected Info(){
System.out.println("Class with protected constructor");
}
}
-->我遗漏了一些关于受保护修饰符的内容,但无法弄清楚。 --> 到目前为止,我已经读到一个具有受保护构造函数的类只能由它的子类实例化,并且也可以在同一个包或不同的包中实例化。那么上面是怎么给我这个输出的:带有受保护构造函数的类 整数值为:20
【问题讨论】:
-
您的
Info类和MyTest位于同一个包中。并且protected修饰符具有包可见性。尝试将Info移动到不同的包中,以获取相同语句的错误。
标签: java protected access-modifiers