Quiero ser capaz de mover un método de instancia de una clase a otra clase ("Mover método" de Fowler "Refactorización") en IntelliJ IDEA. Lamentablemente, cuando intento "Mover ..." (cmd: F6), me dice que "No hay métodos que tengan un tipo de referencia. ¿Desea que el método sea estático y luego se mueva?" No quiero que mi método sea estático, sino que quiero que sea un método de instancia en la otra clase.¿Cómo puedo aplicar la refacturación del "método de traslado" con IntelliJ IDEA?
Mi código de ejemplo:
public class TheClass {
public void doStuff(){
int i = themethod();
}
private int theMethod() {
System.out.println("Hello World!");
return 0;
}
}
public class OtherClass {
}
decir que quiero mover theMethod
TheClass
-OtherClass
. ¿Existe una refacturación automática en IDEA para esto? De ser así, ¿cómo lo aplico?
Exactamente lo que estaba buscando. ¡Gracias! –
Lo mismo aquí. Esta debería ser la respuesta aceptada. O más como IntelliJ debería juntar su mierda, para que los usuarios no tengan que recurrir a trucos como este;) –
Si usa _Use Any Var_ cuando introduce el nuevo parámetro, IntelliJ buscará una instancia existente de la clase introducida y Usa ese en lugar de crear uno nuevo. Potente, pero también peligroso, así que ... ten cuidado. – Maarten