У меня возникли проблемы с поиском правильной опции рефакторинга для следующего сценария:
У меня есть код вроде этого (в Outer.java):
public class Outer {
// ... class stuff
public static class Inner {
// ... inner class stuff
}
}
Я ищу способ выбрать Inner и преобразовать его в класс верхнего уровня, в свой собственный исходный файл .java
. Я знаю, что это довольно легко сделать вручную с копированием/вставкой и т.д., Но внутренний класс упоминается во многих местах, и мне бы хотелось, чтобы опция refactor обрабатывала изменение везде, на которое оно ссылается.
Я пробовал вариант Refactor -> Extract Class...
, но что-то странное с полем под названием data
, которое я не совсем понимаю.
Версия Eclipse - 3.5.1 Galileo.
Как мне преобразовать статический внутренний класс в класс верхнего уровня?
Изменить: Не могу поверить, что я упустил возможность сделать это. Спасибо за все ваши правильные ответы, +1 всем вам. Мне все равно нужно принять ответ, поэтому, если есть еще более полезная информация, например. gotchas с script, все еще есть цель оставить ответ.