Obrázok umožňuje vidieť triedu zbierky Java (súhrn tried zbierky Java)

Picture Lets You See Java Collection Class



O triedach zbierok Java je veľa článkov, ale nedávno som videl veľmi zaujímavý obrázok, ktorý v zásade zobrazuje celkový rámec zbierky Java. Veľmi intuitívne.



Predpokladajme, že zistíte, že obraz nie je jasný. Kliknutím sem zobrazíte väčší obrázok



Trieda zbierky je tu rozdelená do dvoch hlavných kategórií: Mapa a Zbierka.



Štyri triedy (Slovník, HashTable, Vector, Stack) v šedej farbe vľavo hore na obrázku sú bezpečné pre vlákna, ale všetky sú to staré triedy JDK. V zásade sa veľmi nepoužívajú a existujú zodpovedajúce substitučné triedy. Mapa sa používa na nahradenie abstraktnej triedy slovníka v ľavom hornom rohu obrázka (oficiálny dokument mapy má Popis )。

Oficiálne odporúčanie použiť na jeho nahradenie rozhranie Map. To isté platí pre HashTable. Oficiálnym odporúčaním ConcurrentHashMap je nahradiť ho. Nasledujúci Vektor je triedou implementácie pod Zoznamom.

Horná ružová časť potom predstavuje celý diagram rozhrania triedy zhromažďovania.



Štruktúra mapy je pomerne jednoduchá a štruktúra zbierky je pomerne komplikovaná. Zbierka má tri zdedené rozhrania: Zoznam, Fronta a Sada.

Ďalšia zelená časť je hlavnou triedou implementácie triedy zberu.

Toto je tiež trieda zberu, ktorú používame najčastejšie.

podľa Implementačné rozhranie klasifikácia:

Implementácia rozhrania Mapy je: EnumMap, IdentityHashMap, HashMap, LinkedHashMap, WeakHashMap, TreeMap

Implementácia rozhrania Zoznam je: ArrayList, LinkedList

Implementácia rozhrania Set je: HashSet, LinkedHashSet, TreeSet

Implementácia rozhrania frontu je: PriorityQueue, LinkedList, ArrayQueue

v súlade s Základná implementácia dátovej štruktúry klasifikácia:

Podkladová vrstva je implementovaná ako pole: EnumMap, ArrayList, ArrayQueue
Podkladová vrstva je implementovaná ako prepojený zoznam: LinkedHashSet, LinkedList, LinkedHashMap
Podkladová implementácia je implementovaná ako hash tabuľka: HashMap, HashSet, LinkedHashMap, LinkedHashSet, WeakHashMap, IdentityHashMap
Podkladová vrstva je implementovaná ako červeno-čierny strom: TreeMap, TreeSet
Podkladová vrstva je implementovaná ako binárna halda: PriorityQueue

Najspodnejšou časťou je trieda vo vnútri balíka java.util.concurrent. Podľa názvu balíka môžeme vedieť, že triedy v tomto balíku sa používajú na spracovanie rôznych scenárov súbežnosti v programovaní Java.

Odporúčanie nástroja: http://grepcode.com/.

Prečítajte si artefakt kódu. Táto webová stránka na čítanie zdrojového kódu obsahuje nielen väčšinu zdrojového kódu knižnice triedy Java, ale aj veľmi dobrú optimalizáciu pohľadu, skoku atď. V strede zdrojového kódu. Pomocou nej môžete zaistiť, aby sa efektívnosť čítania zdrojového kódu výrazne zlepšila.

poďakovať: https://www.cnblogs.com/mengfanrong/p/5079533.html