有没有办法在Java中声明一个方法“友好”?

时间:2009-12-03 11:32:20

标签: java methods visibility

我知道可以设置属性publicfriendlyprivate来指定其可见性。

有没有办法可以声明friendly方法?我希望它只能从同一个包的类的对象中访问。

谢谢你,这里的初学者:(。

7 个答案:

答案 0 :(得分:8)

只是不要指定辅助功能 - 默认为“包可见”或“默认访问”。不幸的是,没有办法明确这样做。

请注意,protected访问不仅与继承相关,还包括同一包中的其他类型。 (这对我来说似乎总有些奇怪,但没关系。)

有关详细信息,请参阅Java Language Specification section 6.6

答案 1 :(得分:8)

通过不输入visiblity修饰符,Java使用包私有范围

查看以下article

编辑:正如评论中所提到的,没有办法将方法标记为“友好”。但是根据您的需要,package-private就足够了。

答案 2 :(得分:4)

这可以通过在方法声明中省略public / private来实现。该方法是隐式公开的,但只能在同一个包中访问。

答案 3 :(得分:2)

是 - 不要放任何修饰符。简单地

String myString;

Here您可以看到每个可见性修饰符的语义。

答案 4 :(得分:1)

简单地说什么,默认是包可见性。

答案 5 :(得分:1)

在Java中,您拥有公共,受保护,包和私有的可见性。包可见性也称为默认值,因为您通过省略其他关键字来指定它。

答案 6 :(得分:0)

如果你没有指定任何访问修饰符,那么该方法将是“package-private”,听起来就像你想要的那样。