Passa all'implementazione dell'interfaccia in Eclipse IDE


140

Sai come in Eclipse, premendo F3 su un metodo ti porterà alla sua dichiarazione? Bene, ho un metodo che fa parte di un'interfaccia; fare clic F3su questo mi porta naturalmente all'interfaccia dichiarante.

Ovviamente c'è un oggetto che implementa questa interfaccia ed è qui che il metodo è effettivamente implementato. Quando premo F3, voglio passare all'implementazione, non alla dichiarazione dell'interfaccia. So che l'implementazione potrebbe non essere nota al momento della compilazione, quindi c'è un modo per Eclipse di mostrarmi tutte le classi che implementano l'interfaccia in modo da poter selezionare quale metodo implementato visualizzare? In questo momento, quando succede, sto solo cercando manualmente questo per trovare il metodo implementato.


4
Ctrl + T ti dà un popup, F4 apre una finestra
Stephan,

Risposte:


137

Ecco cosa faccio:

  • Nell'interfaccia, spostare il cursore sul nome del metodo. Press F4. => Viene visualizzata la vista Tipo gerarchia
  • Nella parte inferiore della vista, il metodo dovrebbe già essere selezionato. Nella sua barra degli strumenti, fai clic su "Blocca vista e mostra membri nella gerarchia" (dovrebbe essere l'icona della barra degli strumenti più a sinistra).
  • Nella parte superiore della vista, è possibile sfogliare tutte le implementazioni del metodo.

La procedura non è molto rapida, ma ti offre una buona panoramica.


129

Bene ... bene ... Spero che tu usi Eclipse Helios, perché ciò che hai chiesto è disponibile su Helios.

Posiziona nuovamente il cursore del testo sul metodo e fai clic sul menu Naviga → Apri implementazione. Ora, se hai più di un'implementazione del metodo, avrai la scelta di scegliere quale implementazione aprire.

testo alternativo

Definendo un'associazione di tasti su Preferenze → Generale → Tasti puoi anche usare la funzione più facilmente, ma prima di farlo, vedi se questo collegamento è abbastanza veloce per te.

Premi Ctrl + clic e tieni premuto. Ora sposta il mouse sullo stesso metodo. Tadam ... avrai scelta.

testo alternativo

Se scegli Open Implementation avrai la stessa scelta di prima.


3
Fantastico. Questo risolve qualcosa che mi ha sempre infastidito per l'eclissi. :) Molte grazie.
brimborio

Ottimo consiglio! ma potresti anche passare il cursore del mouse sopra e premere ctrl quindi selezionare dal menu a discesa [in ossigeno eclissi] .... Voglio dire, potrebbe non essere necessario tenere premuto Ctrl + fai clic ora.
monaco anziano

73

Premere Ctrl+ Tsul nome del metodo (anziché F3). Ciò fornisce la gerarchia dei tipi come pop-up, quindi è leggermente più veloce dell'uso F4e della vista gerarchia dei tipi.

Inoltre, una volta eseguito su un metodo, i sottotipi che non implementano / sovrascrivono il metodo verranno disattivati ​​e quando si fa doppio clic su una classe nell'elenco, si accederà direttamente al metodo in quella classe.


2
Funziona alla grande anche solo con la tastiera. Basta CTRL + T e utilizzare i tasti freccia per navigare. Premi Invio per passare all'implementazione.
È Leto il

54

C'è un grande aumento della produttività se aggiungi un'associazione chiave Alt+ F3alla funzione Open Implementation e usi semplicemente F3per andare alle interfacce e Alt+ F3per andare alle implementazioni.

Apri keybinding di implementazione


2
Ottimo consiglio! Grazie. Solo triste che l'eclissi cerchi solo un livello di gerarchia.
Snicolas,

Questa soluzione ha funzionato per me. Molti degli altri (specialmente i plug-in) non lo fecero.
Nelda.techspiress,

In Eclipse Neon viene utilizzato Alt + F3 Incremental Find, invece ho scelto Alt + I
user7294900

12

Evidenzia un'interfaccia e usa Ctrl+ Tper aprire "Gerarchia di tipi rapidi".


12
ctrl + mouse hover + click "Open Implementation"

Su ctrl + hover, dovresti vedere il seguente menu:

inserisci qui la descrizione dell'immagine

Testato su Eclipse Mars.2 (4.5.2)


3

Ecco cosa faccio:

Premo comando (su Mac, probabilmente controllo su PC) e poi passo con il mouse sopra il metodo o la classe. Quando lo fai, apparirà una finestra pop-up con le opzioni "Apri dichiarazione", "Apri implementazione", "Apri tipo di reso". È quindi possibile fare clic su ciò che si desidera ed Eclipse ti porta lì. Credo che funzioni per la versione 3.6 e successive.

È veloce come penso IntelliJ.


2

Grazie anche questo è stato utile. Da quel link puoi anche fare clic sul metodo tenendo premuto 'cntrl' e quindi scegliere 'Apri implementazione'. Questo è ancora più veloce.
aeq,


0

Se stai davvero cercando di velocizzare la tua navigazione nel codice, potresti dare un'occhiata a nWire per Java . È un plug-in di esplorazione del codice per Eclipse. Puoi vedere immediatamente tutti i manufatti correlati. Quindi, in tal caso, ti concentrerai sulla chiamata del metodo e vedrai immediatamente tutte le possibili implementazioni, dichiarazioni, invocazioni, ecc.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.