1

我正在重构一些影响我的代码的许多位(巨大)的东西,我最终需要组织我的项目的导入,以便它可以添加一个类中成员的静态导入..

在花了一整天试图弄清楚如何做到这一点之后,我找不到路。它在 IntelliJ 或 Eclipse 中都不起作用。

在 Eclipse 中,我已将其添加到收藏夹设置中,就像这里解释的那样:

Eclipse 优化导入以包括静态导入

但是,它仅适用于 Control + 空格,不适用于 Control+Shift+O(重新排列导入)

在 Eclipse 4.2 中,至少它绘制了红色线并向我提出了添加导入的建议,但它仍然在“组织导入”触发器上什么都不做。

在 IntelliJ 中也是一样,将包和类添加到设置中,修复了 Control+Alt+Space,但它不处理“优化导入”功能。

我无法相信这一点。有没有人必须处理这个?

4

2 回答 2

3

您不想import static在所有事情上都执行;如果该类包含过于通用的类成员,import static则只会使您的代码不可读。除此之外,还可能存在名称冲突(例如,两个具有一个static getInstance()方法的类会很常见。

使用 IntelliJ 13.1.3,您可以按 Alt-ENTER,然后选择进行静态导入(旧版本可能需要在 Alt-ENTER 之前有一个或多个 CTR-Space。如果您在静态成员上执行此操作,则只有静态成员是静态导入。如果您在一个类上执行此操作,则可以静态导入所有内容(例如import static some.package.SomeClass.*)。在后一种情况下,它将删除静态导入前面的类,除非存在名称冲突。

请注意,即使没有名称冲突,执行诸如静态导入之类SomeInterface someInstance = getInstance()的操作getInstance()也会让您的同事非常紧张

于 2014-08-04T12:21:20.160 回答
0

请重新阅读您提到的问题。您错过了提到++的答案。“组织导入”和“添加导入”命令之间存在差异。CtrlShiftM

于 2013-04-08T16:19:02.480 回答