在其他源文件夹下的某些其他包(具有相同名称)可见的包私有类

时间:2015-05-25 10:46:46

标签: java packages package-private

当我在Java中使用包和包私有类进行一些测试时,我注意到了一件有趣的事情。以下是我的项目源结构,源文件夹BaseClass下的包MyTestClass.java中的类com.test.pkg是受包保护的类。根据我的理解,这个包不应该在这个包之外。但是,有趣的是,src类也可以在源文件夹MyTestClass.java下的com.test.pkg中访问。仅当包名称相同时才会发生这种情况,尽管它们位于不同的源文件夹中。

有人能告诉我为什么会这样吗?

test

1 个答案:

答案 0 :(得分:2)

在这种情况下,源目录根本不重要。重要的是:包名称是相同的,因此这两个类属于同一个包 - 一切都是正确的。