Jak wyświetlić wszystkich rodziców i podklasy klasy w IntelliJ IDEA?

151

Kiedy edytuję klasę Java w Eclipse, kiedy mój kursor znajduje się nad zmienną klasy, mogę zrobić Ctrl+, Taby mieć wyskakujące okienko, które pokazuje wszystkie jej elementy nadrzędne i podklasy. Jaki jest odpowiednik w IntelliJ?

Przykład:

Use|r user = new User();

Rura jest moim kursorem.

Poślizg
źródło

Odpowiedzi:

217

Nawiguj | Type Hierarchy Ctrl + Hpokaże podobne informacje, jednak w panelu. Można Float i Odepnij panel tak, że pojawia się na stałej pozycji wyświetlacza tylko w przypadku korzystania ze skrótu klawiaturowego.

CrazyCoder
źródło
1
Jestem całkiem nowy w IntelliJ i odkryłem, że znacznie lepiej jest mieć skrót „Ukryj aktywne okno narzędzia” przypisany do skrótu <Escape> (zamiast skrótu „Escape”), który domyślnie jest zamapowany na <Shift + Escape> . Jak dotąd wydawało mi się to bardziej naturalne podczas zamykania „pływających okien” (w tym hierarchii typów).
Eyal Roth
2
I jeszcze jedno - to nadal nie zachowuje się tak samo jak hierarchia szybkich typów Eclipse: w Eclipse, gdy najedziesz kursorem na klasę w hierarchii, naciśnięcie klawisza <Enter> otworzy plik źródłowy z tą klasą; w IntelliJ musisz użyć skrótu „skok do źródła”. Ponadto, ponowne kliknięcie w edytorze nie spowoduje zniknięcia okna, w przeciwieństwie do okna „pokaż implementacje” (na przykład), więc nie jest to czyste okno pływające.
Eyal Roth
78

Pod względem zachowania odpowiednik Eclipse Ctrl+ Tw IntelliJ IDEA to Ctrl+ Alt+B

dimitrisli
źródło
7
na macOS to Option+ Cmd+B
Brad Cupit,
22

Nie jest użytkownikiem IntelliJ IDEA, ale ten post na blogu wydaje się wskazywać, że w wersji 8.1.1 i nowszych Ctrl+ Alt+ Uwyświetli „Szybką Hierarchię Klas”.

Daniel DiPaolo
źródło
To całkiem nieźle, ale czy jest bardziej lekki? Ten tworzy diagram UML? Ciekawe, czy jest szybki kursor, który mogę zobaczyć jego rodziców i przejść do nich.
Glide
2
Wydaje się, że to nie jest odpowiednik. Na przykład dla interfejsu org.slf4j.Logger nie pokazuje nic więcej niż Logger, który jest bezużyteczny. Ctrl-H wydaje się być lepszy, ponieważ pokazuje drzewo klas implementujących (drzewo niestety nie jest rozwinięte). Jednak Eclipse pokazuje również wszystkie rozszerzające interfejsy i ich klasy implementujące. Również poniżej wspomniane CTRL-ALT-B nie pokazuje drzewa ani interfejsów implementujących. Właśnie zaczynam od Idei i spodziewałem się, że taka często używana funkcja
wyprze
1
Wydaje się, że 13.1 Ultimate ma go z powrotem, a skrót działa.
Jason D
Hierarchia klas UML Ctrl + Alt + U działa tylko w Ultimate Edition
Srujan Kumar Gulla
Ctrl + Alt + U nie pokazuje nawet wszystkich cech przodków. Tylko bezpośredni rodzice. Żałosne.
zachwycony
16

W razie wątpliwości spróbuj także CTRL+ SHIFT+ A. Skrót do informacji o skrótach.

sorencito
źródło
16

Intellij - w przeciwieństwie do Eclipse - rozróżnia hierarchie typów i klasy implementacji . Nadal jestem niezdecydowany, czy to dobrze, czy nie (właśnie przeniosłem się z Eclipse na Intellij)

Na komputerze Mac Intellij 14

  • Ctrl+ Hwyświetli hierarchię typów pokazującą pod- i nadtypy
  • Cmd+ Alt+ Bpokaże wszystkie klasy implementujące i podklasy interfejsu / klasy, którą jesteś zainteresowany
Stefan Haberl
źródło
CTRL + ALT + B ma sens nie tylko w przypadku interfejsów - pokazuje również wszystkie podklasy klasy, więc łatwo widać, które typy dziedziczą po klasie, którą jesteś zainteresowany.
nachteil
@nachteil thanks. nie wiedziałem o tym. Zmieniłem opis cmd + alt + b
Stefan Haberl
Tak - Ctrl + H to poprawna odpowiedź Ctrl + Alt + B nie jest dokładnie Ctrl + T zaćmienia
prash
12

W IntelliJ IDEA 12 jest to Nawigacja> Hierarchia typów ( domyślnie Ctrl+ H).

thSoft
źródło
6

Dla użytkowników komputerów Mac, którzy tu przychodzą, jest to skrót do IntelliJ 14.1.4:

+ Hdomyślnie.

mkobit
źródło
4

W przypadku użytkowników komputerów Mac skrót to

^(kontrola) + h

Zia
źródło
3

W IntelliJ 13 jest to domyślnie Navigate> Implementations lub CMD+ ALT+ B. Oczywiście ten skrót można zastąpić w preferencjach mapy klawiszy.

Cody A. Ray
źródło
2

Nie wiem o wcześniejszych wersjach, ale w IntelliJ w wersji 13 możesz przejść do preferencji mapy klawiszy, wyszukać „Implementacje” i powiązać to z Ctrl+ T. Będzie działać bardzo podobnie do odpowiednika Eclipse.

pohl
źródło
1

Podczas gdy Eclipse zawiera hierarchię typów i strukturę klas (metody, pola itp.) W jednym widoku, IntelliJ dzieli je na następujące elementy: Oprócz widoku CTRL+ H(lub ALT+ 8) „Hierarchia typów” , inne odpowiednie okno IntelliJ nosi nazwę „Struktura ” i można go wywołać za pomocą ALT+ 7(okno narzędzia struktury) lub CTRL+ F12(wyskakujące okienko struktury).

(Nie jest to bezpośrednia odpowiedź na zadane pytanie, ale można by się spodziewać, że inne osoby z tła Eclipse mogą przybyć tutaj po wyszukaniu w Google „hierarchii typów intellij”, tak jak ja).

Steve Chambers
źródło
1

Ctrl+U - przejdź do klasy bazowej

Ctrl+Alt+B- dostałem się do realizacji. Wpisz części nazwy klasy, aby zawęzić listę

Ctrl+H - okno narzędzia hierarchii typów otwartych

Ctrl+Alt+U - hierarchia dziedziczenia klas / interfejsów wglądu

Konstantin Spirin
źródło
1

W przypadku Eclipse, naciśnięcie Ctrl+ Tna typie wyświetla jego podtypy, a ponowne naciśnięcie Ctrl+ Twyświetla więc nadtypy. A więc dla ... to jest przełącznik.
To jest naprawdę pomocne i bardzo proste.

Niestety w przypadku IntelliJ, przełączanie między nadtypami i podtypami nie ma żadnego domyślnego skrótu. Będziesz więc musiał kliknąć ikony okien hierarchii.
Jeśli tak jak ja wolisz skróty klawiaturowe do opcji „przesuń kursor i kliknij myszą”, zachęcam do ustawienia powiązania dla tych dwóch operacji. Na przykład Ctrl+ Down dla podtypów i Ctrl+Up dla nadtypów.

Gdzie możesz zmienić powiązanie („Bas” oznacza „Down”, a „Haut” oznacza „Up”): ofiarowana cena na licytacji

Zwróć uwagę, że te powiązania są kontekstowe z kontekstem „Inne” (Eclipse ma wystarczająco podobną koncepcję). 1) W ten sposób wpisanie Ctrl+ Tna ArrayListtypie daje:

Domyślna hierarchia

2) Enter Ctrl+ Downskupia się na podtypach:

skupiają się na podtypach

3) A Enter Ctrl+ Upskupia się na nadtypach:

supertypes skupiają się

W ten sposób uważam, że jest lepsze niż domyślne zachowanie, ale szczerze mówiąc, nawet przy dodawaniu tego skrótu funkcja IntelliJ nie jest tak dobra jak Eclipse, który Ctrl+ + Tdziała również na metodach ...

davidxxx
źródło
0

Jest widok hierarchii jak w Eclipse, spójrz na menu Widok / Narzędzia Okna / Hierarchia lub wciśnij Alt-8 lub F4.

herberlin
źródło