在任何IDE中,当使用包中的类并且我需要使用另一个类中的类时,我必须导入它。为什么IDE不会自动导入包,因此不需要手动执行?
答案 0 :(得分:2)
因为有时不同的类具有相同的“短”名称,因此IDE不知道您的意思。例如,如果将代码复制粘贴到包含Date
的IDE中,则无法知道您是java.sql.Date
还是java.util.Date
。在这些情况下,IDE将允许您从具有该名称的所有可用类中进行选择。
答案 1 :(得分:0)
首先,在Eclipse中,您可以使用 Ctrl - SHIFT - O 自动导入您需要的任何内容。
为方便起见,Java编译器自动导入两个完整的 每个源文件的包:(1)java.lang包和(2) 当前包(当前文件的包)。
IDE将不会导入所有包,因为1.
如果一个包中的成员与另一个包中的成员共享其名称 包和两个包都是导入的,你必须引用每个成员 通过其合格的名称。例如,图形包定义了一个 名为Rectangle的类。 java.awt包还包含一个Rectangle 类。如果已导入图形和java.awt,则执行以下操作 很暧昧。
这会导致不必要的头痛,确保您始终指的是正确的包裹。通过自己导入包和类,您可以确保始终使用您想要的特定类。
答案 2 :(得分:0)
这是我的想法。这样想,
假设您在这样的不同包中有两个具有相同名称的类,那么IDE如何解析包导入?它如何知道要导入哪个SendFormAction? 所以通常IDE会给你一个导入包的选项[在eclipse IDE中使用cntrl + shift + O] 如果有混淆,它会问你要导入哪一个。
com.xyz.action [package]
SendFormAction.java
com.abc.action [package]
SendFormAction.java