java中的内部等价物
什么相当于Java中C#方法中可用的internal
访问修饰符?
(我知道default
即方法,没有任何范围的变量都有package
访问权限,但我正在寻找等价的关键字)
我们如何在Java中实现具有protected internal
作用域的方法?
Java中没有等效的程序集,因此不能使用等效的访问修饰符来使成员在程序集中可用。
最接近internal
是默认的可访问性,它类似但基于包。
最接近protected internal
是protected
(但同样基于包)。 请注意,Java中的protected
也可以自动访问包 – Java中没有任何内容像C# protected
一样具有限制性( 仅在子类中可用)。
来自JLS 6.6.2 (强调我的):
受保护的成员或对象的构造函数可以从包外部访问,只能通过负责实现该对象的代码来声明它 。
换句话说,在声明它的包中,所有代码都可以访问它。