有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在不公开子包类的情况下打包Java子包

假设我的根包中有20个类。我决定通过在根包下创建3个子包来组织这些类。然后我在每个子包中放入5个类,在根包中留下5个类(因为它们是顶级类)。现在,因为我需要使用根包中5个类的子包中的类,所以我最终将子包中的类设置为公共类,而在子包之前,这些类只有包内暴露

上面的代码组织是在良好的指导下完成的。子包装是按特征而不是按层进行的。最小化包之前的相互依赖性。但是,从更高的级别访问很多子包类还是有意义的

是否有解决此类场景的良好实践


共 (1) 个答案

  1. # 1 楼答案

    不幸的是没有。通过将包设置为私有(默认访问),您最多可以看到包级别的可见性。您不能使一个类仅对同一模块中的其他类可见。我认为Project JigsawJSR 294将解决这个问题(除了其他内容之外),但您可能在Java9之前不会看到它