受保护的类构造函数访问权限

时间:2012-02-15 18:10:01

标签: java

我有  class User
包含受保护的构造函数和

class Account

可以访问此构造函数,但Account不会扩展User。

怎么可能?

3 个答案:

答案 0 :(得分:6)

我认为,用户和帐户属于同一个包。受保护的访问也是包访问

答案 1 :(得分:1)

如果您的类在同一个包中,这是预期的行为:

  

protected修饰符指定只能访问该成员   在它自己的包中(与package-private一样),另外,通过   另一个包中其类的子类。

答案 2 :(得分:0)

protected访问权限比包访问权限更宽松。基本上,同一个包中的任何类都可以使用protected范围构造。

具体来说,请参阅JLS 6.6.2.2 Qualified Access to a protected Constructor

  

...只有在定义它的包中,类实例创建表达式(不能声明匿名类)才能访问受保护的构造函数。