【问题标题】:Does importing a package also import subpackages?导入包也会导入子包吗?
【发布时间】:2014-11-29 08:53:06
【问题描述】:

如果我们正在导入java.parentpackage.*;...

  • ... 是子包类也被导入还是只导入父包中的类?
  • ...是否需要导入java.parentpackage.childpackage.*;才能包含所有子包类?

【问题讨论】:

标签: java class import package


【解决方案1】:

以包名和.* 结尾的导入声明仅导入包的所有公共类/接口/注解,没有其他内容。如果您还需要子包中的类,则必须单独导入它们。

如果导入声明包含特定类,则只会导入该类。

如果导入声明包含一个特定的类加上.*(它是静态导入,必须是import static ...的形式),那么所有的静态字段和方法都将从该类导入,仅此而已。

通常只导入特定的类。它减少了类名冲突的可能性(在 2 个不同的包中定义了具有相同名称的 2 个不同的类)。

另外你不需要导入一个类来使用它,你可以使用一个限定名,每次你引用那个类时,你总是写完整的包名和类名。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-05
    • 2019-01-31
    • 1970-01-01
    • 1970-01-01
    • 2023-01-09
    相关资源
    最近更新 更多