好的,我有这个项目结构:
包 A.B
- class
SuperClass
(这个类被标记为 package private)
包A.B.C
- 类
子类
(继承自父类(super class))
我不想让 SuperClass
公开可见...它实际上只是这个特定项目 (A.B) 的实用程序类。
在我看来,SubClass 应该可以看到 SuperClass
,因为包 A.B.C 是 A.B 的子包...但事实并非如此。
解决此问题的最佳方法是什么?我认为将 A.B.C 中的所有内容移至 A.B 或将 A.B 移至 A.B.C 是没有意义的...主要是因为可能会有一个 A.B.D 也继承自 A.B 中的内容...
我对 Java 有点陌生,所以请保持友好 :D(我是 C++ 和 .NET 专家)
最佳答案
包是唯一的标识符。你不能让他们遵循继承规则。包和子包与父类(super class)和子类不同。
我看不出有什么缺陷可以让你想在子包中使用的类对外界可见。我很想知道这个标准在 C++/.net 中是如何处理的(因为我是一个 java 人 :))
关于java - 为什么分包看不到包私有(private)类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2489096/