Przejdź do implementacji interfejsu w Eclipse IDE


140

Wiesz, jak w Eclipse naciśnięcie przycisku F3spowoduje przejście do jej deklaracji? Cóż, mam metodę, która jest częścią interfejsu; kliknięcie F3tego w naturalny sposób przenosi mnie do interfejsu deklarowania.

Oczywiście istnieje obiekt implementujący ten interfejs i tutaj metoda jest faktycznie implementowana. Chcę, aby po naciśnięciu F3przejść do implementacji, a nie do deklaracji interfejsu. Wiem, że implementacja może nie być znana w czasie kompilacji, więc czy istnieje sposób, aby Eclipse pokazał mi wszystkie klasy implementujące interfejs, abym mógł wybrać zaimplementowaną metodę do wyświetlenia? Teraz, kiedy tak się dzieje, szukam tego ręcznie, aby znaleźć zaimplementowaną metodę.


4
Ctrl + T wyświetla wyskakujące okienko, F4 otwiera okno
Stephan

Odpowiedzi:


137

Oto co robię:

  • W interfejsie przesuń kursor na nazwę metody. Naciśnij F4. => Pojawia się widok hierarchii typów
  • W dolnej części widoku należy już wybrać metodę. Na pasku narzędzi kliknij „Zablokuj widok i pokaż członków w hierarchii” (powinna to być ikona paska narzędzi znajdująca się najbardziej po lewej stronie).
  • W górnej części widoku możesz przeglądać wszystkie implementacje metody.

Procedura nie jest bardzo szybka, ale daje dobry przegląd.


129

Cóż ... cóż ... Mam nadzieję, że używasz Eclipse Helios, ponieważ to, o co prosiłeś, jest dostępne na Heliosie.

Umieść kursor tekstowy ponownie na metodzie i kliknij menu Nawiguj → Otwórz implementację. Jeśli masz więcej niż jedną implementację metody, możesz wybrać, którą implementację chcesz otworzyć.

tekst alternatywny

Definiując klawisze w Preferencjach → Ogólne → Klawisze możesz nawet łatwiej korzystać z tej funkcji, ale zanim to zrobisz, sprawdź, czy ten skrót jest wystarczająco szybki.

Naciśnij Ctrl + kliknij i przytrzymaj. Teraz przesuń kursor myszy na tę samą metodę. Tadam… będziesz miał wybór.

tekst alternatywny

Jeśli wybierzesz otwartą implementację, będziesz mieć taki sam wybór jak poprzednio.


3
Fantastyczny. To rozwiązuje problem, który zawsze przeszkadzał mi w zaćmieniu. :) Wielkie dzięki.
brimborium

Świetna wskazówka! ale także możesz po prostu najechać kursorem i nacisnąć ctrl, a następnie wybrać z listy rozwijanej [w zaćmieniu tlenu] .... Mam na myśli to, że nie musisz teraz trzymać wciśniętego klawisza Ctrl + kliknięcie.
stary mnich

73

Naciśnij Ctrl+ Tna nazwie metody (zamiast F3). Dzięki temu hierarchia typów jest wyskakująca, więc jest nieco szybsza niż używanie F4i widok hierarchii typów.

Ponadto, po wykonaniu dla metody, podtypy, które nie implementują / nie zastępują metody, będą wyszarzone, a po dwukrotnym kliknięciu klasy na liście przeniesie Cię bezpośrednio do metody w tej klasie.


2
Działa również świetnie z samą klawiaturą. Po prostu CTRL + T i użyj klawiszy strzałek do nawigacji. Naciśnij klawisz Enter, aby przejść do implementacji.
Jest Leto

54

Jeśli dodasz powiązanie klawisza Alt+ F3do funkcji Open Implementation i po prostu użyjesz, F3aby przejść do interfejsów, i Alt+, F3aby przejść do implementacji, nastąpi duży wzrost produktywności .

Otwórz powiązanie klucza implementacji


2
Świetna wskazówka! Dzięki. Tylko smutne, że zaćmienie przeszukuje tylko jeden poziom hierarchii.
Snicolas

To rozwiązanie zadziałało dla mnie. Wielu innym (zwłaszcza wtyczkom) nie.
Nelda.techspiress

W Eclipse Neon Alt + F3 jest używany do Incremental Find, wybrałem zamiast tego Alt + I
user7294900

12

Podświetl interfejs i użyj Ctrl+, Taby otworzyć „Hierarchię szybkich typów”.


12
ctrl + mouse hover + click "Open Implementation"

On ctrl + hoverpowinien pojawić się następujące menu:

wprowadź opis obrazu tutaj

Testowano na Eclipse Mars.2 (4.5.2)


3

Oto co robię:

Naciskam polecenie (na Macu, prawdopodobnie control na PC), a następnie najeżdżam kursorem na metodę lub klasę. Gdy to zrobisz, pojawi się wyskakujące okienko z opcjami „Otwórz deklarację”, „Otwórz implementację”, „Otwórz typ zwrotu”. Następnie możesz kliknąć to, co chcesz, a Eclipse przeniesie Cię tam. Uważam, że działa to w wersji 3.6 i nowszych.

To jest tak samo szybkie, jak myślę, IntelliJ.


2

Dzięki, to też było pomocne. Z tego linku możesz także kliknąć metodę, przytrzymując klawisz „cntrl”, a następnie wybrać „Otwórz implementację”. To jest jeszcze szybsze.
aeq


0

Jeśli naprawdę chcesz przyspieszyć nawigację po kodzie, możesz rzucić okiem na nWire for Java . Jest to wtyczka do eksploracji kodu dla Eclipse. Możesz natychmiast zobaczyć wszystkie powiązane artefakty. W takim przypadku skupisz się na wywołaniu metody i natychmiast zobaczysz wszystkie możliwe implementacje, deklaracje, wywołania itp.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.