Gru*_*eck 34 java eclipse automated-refactoring
我无法为以下场景找到正确的重构选项:
我有这样的代码(在Outer.java中):
public class Outer {
// ... class stuff
public static class Inner {
// ... inner class stuff
}
}
Run Code Online (Sandbox Code Playgroud)
我正在寻找一种方法来选择Inner,并将其转换为顶级类,在它自己的.java源文件中.我知道这很容易用复制/粘贴等手动完成,但内部类在很多地方被引用,我希望refactor选项能够处理它所引用的任何地方的变化.
我已经尝试过这个选项,Refactor -> Extract Class...但是对于一个data我不太了解的字段做了一些奇怪的事情.
Eclipse版本是3.5.1 Galileo.
如何将静态内部类重构为顶级类?
编辑:不敢相信我忽略了这样做的选择.感谢您的所有正确答案,给大家+1.我仍然需要接受一个答案,所以如果有更多有用的信息,例如与脚本有关,那么仍然有一个留下答案的目的.
Gru*_*eck 49
这很容易我不敢相信我错过了它:
将光标放在内部类型的任何位置,右键单击并选择:
Refactor -> Convert Member Type to Top Level...
(默认设置中没有快捷方式)
这会自动提取内部类型,并将其放在自己的文件中,与外部类型位于同一个包和目录中.
更新
在Eclipse的更高版本中,此重构已重命名为"将类型移动到新文件"
| 归档时间: |
|
| 查看次数: |
12476 次 |
| 最近记录: |