Java 如何在Eclipse中将顶级类或接口重构为内部类或接口?

Java 如何在Eclipse中将顶级类或接口重构为内部类或接口?,java,eclipse,refactoring,Java,Eclipse,Refactoring,我有一个接口,我想移动到另一种类型。有没有办法让Eclipse来帮助我进行更改?同样的更改也可以应用于一个类以将其移动到另一个类中 基本上,我正在寻找将成员类型转换为顶级的相反方法。我希望这将是一个行动,但这只提供了作为目标的一揽子计划 剪切接口并将其粘贴到要嵌入接口的类中 如果不需要外部类的实例就可以访问内部类,则添加static关键字 在包资源管理器中,选择项目并右键单击>源>组织导入 我认为这将导致大部分(如果不是全部的话)编译错误。我不会试图说服您放弃它。我要说的是,如果世界上最流行的[

我有一个接口,我想移动到另一种类型。有没有办法让Eclipse来帮助我进行更改?同样的更改也可以应用于一个类以将其移动到另一个类中

基本上,我正在寻找将成员类型转换为顶级的相反方法。我希望这将是一个行动,但这只提供了作为目标的一揽子计划

  • 剪切接口并将其粘贴到要嵌入接口的类中
  • 如果不需要外部类的实例就可以访问内部类,则添加
    static
    关键字
  • 在包资源管理器中,选择项目并右键单击>源>组织导入

  • 我认为这将导致大部分(如果不是全部的话)编译错误。

    我不会试图说服您放弃它。我要说的是,如果世界上最流行的[引文需要]Java IDE没有它,原因与Java不允许
    goto
    :您可能不应该这样做。:-)最好的java IDE在第一天就有了这一功能,eclipse从最好的IDE复制了十年。@corsiKa说,使用内部类有一些好处,为什么要避免它们呢?@thSoft我不是说使用内部类没有好处。我是说,把一个分离的东西整合起来可能是个坏主意。特别是接口:接口仅在该类中有用的可能性有多大?这不是很好的接口-y.@corsiKa我发现自己经常声明一个单独的Foo类和一个FooType枚举。我认为这是一个典型的用例,这种重构将非常有用它不修复依赖于接口的任何其他类,但是请注意,对于顶级类,在将其粘贴为嵌套类后,应将
    static
    添加到其修饰符中,以使其在语义上等效。同样值得注意的是,Eclipse目前不提供内置支持。看见