java中的内部等价物

时间:2014-01-04 13:04:43

标签: java access-modifiers

对于Java中的方法,C#中可用的internal访问修饰符相当于什么?

(我知道default即方法,没有任何范围的变量都有package访问权限,但我正在寻找等价的关键字

我们如何在Java中实现protected internal范围的方法?

1 个答案:

答案 0 :(得分:25)

在Java中没有等效的程序集,因此不能有一个等价的访问修饰符,它使成员在程序集中可用。

您最接近internal的是默认的辅助功能,它类似但基于包。

您距protected internal最近的地方是protected(但同样基于套餐)。请注意,Java 中的protected可以自动访问包 - Java中没有任何内容与C#protected一样具有限制性(就而言 >在子类中可用。)

来自JLS 6.6.2(强调我的):

  

对象的受保护成员或构造函数可以通过负责实现该对象的代码从声明它的包外部访问

换句话说,在声明它的包中,所有代码都可以访问它。