Подтвердить что ты не робот

Eclipse, рефакторинг java-метода в другой класс

Как я могу реорганизовать (переместить) метод Java в classA в класс B и обновить все ссылки на метод?

Поддерживается ли это в Eclipse?

4b9b3361

Ответ 1

Для статического метода вы можете щелкнуть правой кнопкой мыши и выбрать "Переместить".

Obj1.myMethod()

затем переместится на

Obj2.myMethod()

и eclipse будет исправлять ваши импорт и т.д.

Для нестатического метода это может не работать в зависимости от отношения между classA и classB.

Obj1 myobj1 = new Obj1();
myobj1.myMethod();
myobj1.myOtherMethod();

Если вы переместите myMethod() в другой класс, рефакторинг должен будет изменить инициализацию объекта. Если myOtherMethod не перемещается, он не может просто изменить тип myobj1 на Obj2, потому что myOtherMethod не будет работать.

Ответ 2

  • Выберите метод в представлении "Структура"
  • Рефакторинг > Переместить

Если вы хотите переместить метод в новый класс - Рефакторинг > Класс извлечения