【问题标题】:Java: Is it bad practice to have same package name in the different libraries?Java:在不同的库中使用相同的包名是不好的做法吗?
【发布时间】:2020-01-16 06:33:08
【问题描述】:

假设我有 2 个具有以下类的自己的库:

lib1:

name.of.the.package.A

lib2:

name.of.the.package.B

包名相同,但类名不同。因此,我可以在同一个地方使用这两个类,而不会出现任何编译或运行时异常。此外,我检查是否可以使用星号导入这两个类:


import name.of.the.package.*;

...


A a = new A();
B b = new B();

我认为这是一个不好的方法,因为如果这些包包含具有相同名称的类,那么使用它们会变得很痛苦。你说什么?

【问题讨论】:

  • 这被称为“分包”,在Java 9中添加的Java模块系统下不再可能(但如果不使用模块仍然可以使用)。

标签: java class oop package


【解决方案1】:

这是一种不好的做法。如果您在一个库中封装了私有类或类成员,您希望没有其他类可以访问它们并且它们按预期工作。但是同一个包中的类可能会破坏这一点。

【讨论】:

    猜你喜欢
    • 2011-11-16
    • 2013-03-24
    • 1970-01-01
    • 2016-01-09
    • 2017-03-11
    • 1970-01-01
    • 2011-12-12
    相关资源
    最近更新 更多