Переход в реализацию интерфейса в Eclipse IDE

Вы знаете, как в Eclipse нажатие F3 по методу приведет вас к его объявлению? Ну, у меня есть метод, который является частью интерфейса; нажатие F3 поверх этого, естественно, приводит меня к объявляющему интерфейсу.

Очевидно, что существует объект, реализующий этот интерфейс, и именно здесь метод фактически реализован. Я хочу, когда я нажимаю F3, чтобы перейти к реализации, а не декларации интерфейса. Я знаю, что реализация не может быть известна во время компиляции, так что есть способ для Eclipse показать мне все классы, реализующие интерфейс, чтобы я мог выбрать, какой реализованный метод просматривать? Прямо сейчас, когда это происходит, я просто вручную ищу это, чтобы найти реализованный метод.

Ответ 1

Вот что я делаю:

  • В интерфейсе переместите курсор к имени метода. Нажмите F4. = > Отображается вид иерархии типов
  • В нижней части представления метод уже должен быть выбран. На панели инструментов нажмите "Блокировать просмотр и показать элементы в иерархии" (должен быть самый левый значок панели инструментов).
  • В верхней части представления вы можете просмотреть все реализации метода.

Процедура выполняется не очень быстро, но она дает хороший обзор.

Ответ 2

Ну... ну... Надеюсь, вы используете Eclipse Helios, потому что то, что вы попросили, доступно на Helios.

Поместите свой текстовый курсор еще раз на метод и нажмите меню Навигация → Открыть реализацию. Теперь, если у вас есть несколько вариантов реализации метода, вы сможете выбрать, какую реализацию открыть.

alt text

Определяя привязку клавиш к настройкам → Общие → Ключи, вы можете даже использовать эту функцию проще, но прежде чем вы это сделаете, посмотрите, достаточно ли для вас этого ярлыка.

Нажмите Ctrl + кликнуть и удерживать. Теперь переместите указатель мыши по тому же методу. Тадам... у тебя будет выбор.

alt text

Если вы выберете Open Implementation, вы получите тот же выбор, что и раньше.

Ответ 3

Нажмите Ctrl + T на имя метода (а не F3). Это дает иерархию типов как всплывающее окно, так что это немного быстрее, чем использование F4 и вид иерархии типов.

Кроме того, при выполнении метода подтипы, которые не реализуют/переопределяют метод, будут выделены серым цветом, а при двойном щелчке по классу в списке он приведет вас прямо к методу этого класса.

Ответ 4

Повысится производительность, если вы добавите привязку Alt + F3 к функции Open Implementation и просто используйте F3 для перехода к интерфейсам и Alt + F3, чтобы перейти к реализациям.

Open implementation keybinding

Ответ 5

ctrl + mouse hover + click "Open Implementation"

В ctrl + hover вы увидите следующее меню:

введите описание изображения здесь

Протестировано на Eclipse Mars.2 (4.5.2)

Ответ 6

Выделите интерфейс и используйте Ctrl + T, чтобы открыть "Иерархия быстрого типа".

Ответ 7

Вот что я делаю:

Я нажимаю команду (на Mac, возможно, на ПК), а затем наведите курсор на метод или класс. Когда вы это сделаете, появится всплывающее окно с вариантами "Open Declaration", "Open Implementation", "Open Return Type". Затем вы можете нажать на то, что хотите, и Eclipse приведет вас туда. Я считаю, что это работает для версии 3.6 и выше.

Это так же быстро, как IntelliJ, я думаю.

Ответ 8

См. В eclipse, ctrl-click переходит к объявлению метода, который я нажал. Для интерфейсов с одной реализацией, как я могу непосредственно перейти к этой реализации? для некоторых альтернативных решений.

  • В любом случае, я думаю, вы могли бы найти что-то вроде этого:

http://eclipse-tools.sourceforge.net/implementors/

Ответ 9

Я всегда использую этот плагин для разработчиков, чтобы найти всю реализацию интерфейса

http://eclipse-tools.sourceforge.net/updates/

это мой любимый и лучший

Ответ 10

Если вы действительно хотите ускорить навигацию по коду, вы можете взглянуть на nWire для Java. Это плагин для разработки кода для Eclipse. Вы можете сразу увидеть все связанные артефакты. Итак, в этом случае вы сосредоточитесь на вызове метода и мгновенно увидите все возможные реализации, декларации, вызовы и т.д.

Ответ 11

Лучшим решением будет Ctrl + Alt + I.