我希望能够在 IntelliJ IDEA 中将实例方法从一个类移动到另一个类(Fowler 的“重构”中的“移动方法”)。不幸的是,当我尝试“移动...”(cmd:F6)时,它告诉我“没有具有引用类型的方法。您想让方法静态然后移动吗?”我不想使我的方法成为静态的,我希望它成为另一个类的实例方法。
我的代码示例:
public class TheClass {
public void doStuff(){
int i = themethod();
}
private int theMethod() {
System.out.println( "Hello World!" );
return 0;
}
}
public class OtherClass {
}
说我想搬家theMethod
from TheClass
to OtherClass
。 IDEA 中是否有自动重构功能,如果有:我该如何应用它?
在 IntelliJ 14-15 中执行以下操作:
- 将插入符号放在 theMethod() 上。
- 按 Ctrl/Cmd+F6(更改签名)。
- 引入新参数:Type=TheOtherClass,Name=theOtherClass,默认值=new TheOtherClass()
- Refactor
- 然后按F6(移动)并将该方法移动到OtherClass。
你最终会得到:
public class TheClass {
public void doStuff() {
int i = new TheOtherClass().theMethod();
}
}
public class TheOtherClass {
int theMethod() {
System.out.println("Hello World!");
return 0;
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)