Skip to content

Commit ad93415

Browse files
committed
java-collection-framework: init
1 parent 0a78918 commit ad93415

File tree

7 files changed

+211
-147
lines changed

7 files changed

+211
-147
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
│ ├── <a href="./java/source-code/">source-code</a><br>
4949
│ │ └── <a href="./java/source-code/jdk/">jdk</a><br>
5050
│ │ &nbsp;&nbsp;&nbsp; ├── <a href="./java/source-code/jdk/collection/">collection</a><br>
51+
│ │ &nbsp;&nbsp;&nbsp; │ └── <a href="./java/source-code/jdk/collection/collection.md">collection.md</a><br>
5152
│ │ &nbsp;&nbsp;&nbsp; └── <a href="./java/source-code/jdk/lang/">lang</a><br>
5253
│ │ &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; └── <a href="./java/source-code/jdk/lang/integer.md">integer.md</a><br>
5354
│ ├── <a href="./java/test/">test</a><br>
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Collection
2+
3+
- [Collection](#collection)
4+
- [List](#list)
5+
- [Map](#map)
6+
- [Set](#set)
7+
- [Queue](#queue)
8+
9+
## List
10+
11+
![list](http://image.rainstorm.vip/blog/java-collection-framework-list.png)
12+
13+
## Map
14+
15+
![map](http://image.rainstorm.vip/blog/java-collection-framework-map.png)
16+
17+
## Set
18+
19+
![Set](http://image.rainstorm.vip/blog/java-collection-framework-set.png)
20+
21+
## Queue
22+
23+
![Queue](http://image.rainstorm.vip/blog/java-collection-framework-queue-deque.png)

res/java-collection-framework-list.pu

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
@startuml java-collection-framework-list
2+
3+
interface Collection<E>
4+
class AbstractCollection<E>
5+
interface List<E>
6+
class CopyOnWriteArrayList<E>
7+
class AbstractList<E>
8+
class ArrayList<E>
9+
class AbstractSequentialList<E>
10+
class LinkedList<E>
11+
class Vector<E>
12+
class Stack<E>
13+
14+
Collection <|.. List
15+
List <-- CopyOnWriteArrayList
16+
17+
Collection <-- AbstractCollection
18+
AbstractCollection <|-- AbstractList
19+
20+
List <-- AbstractList
21+
AbstractList <|-- Vector
22+
Vector <|-- Stack
23+
AbstractList <|-- ArrayList
24+
AbstractList <|-- AbstractSequentialList
25+
AbstractSequentialList <|-- LinkedList
26+
27+
28+
caption Java 集合框架 list 模块
29+
30+
right footer https://github.com/c-rainstorm/blog 转载请注明出处
31+
32+
@enduml

res/java-collection-framework-map.pu

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
@startuml java-collection-framework-map
2+
3+
interface Map<K,V>
4+
interface SortedMap<K,V>
5+
interface NavigableMap<K,V>
6+
class TreeMap<K,V>
7+
class AbstractMap<K,V>
8+
class WeakHashMap<K,V>
9+
class HashMap<K,V>
10+
class LinkedHashMap<K,V>
11+
class EnumMap<K extends Enum<K>, V>
12+
class IdentityHashMap<K,V>
13+
interface ConcurrentMap<K,V> #Darkorange
14+
class ConcurrentHashMap<K,V> #Darkorange
15+
interface ConcurrentNavigableMap<K,V> #Darkorange
16+
class ConcurrentSkipListMap<K,V> #Darkorange
17+
18+
SortedMap .|> Map
19+
Map <.. AbstractMap
20+
Map <|. ConcurrentMap
21+
22+
NavigableMap .|> SortedMap
23+
NavigableMap <.. TreeMap
24+
25+
AbstractMap <|-- HashMap
26+
HashMap <|-- LinkedHashMap
27+
28+
AbstractMap <|-- WeakHashMap
29+
EnumMap -|> AbstractMap
30+
AbstractMap <|-- IdentityHashMap
31+
32+
AbstractMap <|-- ConcurrentHashMap
33+
ConcurrentMap <.. ConcurrentHashMap
34+
35+
ConcurrentMap <|. ConcurrentNavigableMap
36+
37+
AbstractMap <|- ConcurrentSkipListMap
38+
ConcurrentNavigableMap <.. ConcurrentSkipListMap
39+
40+
note bottom of ConcurrentHashMap
41+
深色表示类在Concurrent包
42+
end note
43+
44+
caption Java 集合框架 Map 模块
45+
46+
right footer https://github.com/c-rainstorm/blog 转载请注明出处
47+
48+
@enduml
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
@startuml java-collection-framework-queue-deque
2+
3+
interface Queue<E>
4+
class ConcurrentLinkedQueue<E> #Darkorange
5+
class PriorityQueue<E>
6+
interface BlockingQueue<E> #Darkorange
7+
class ArrayBlockingQueue<E> #Darkorange
8+
class LinkedBlockingQueue<E> #Darkorange
9+
class DelayQueue<E extends Delayed> #Darkorange
10+
class SynchronousQueue<E> #Darkorange
11+
class PriorityBlockingQueue<E> #Darkorange
12+
interface Deque<E>
13+
class ArrayDeque<E>
14+
interface BlockingDeque<E> #Darkorange
15+
class LinkedBlockingDeque<E> #Darkorange
16+
class ConcurrentLinkedDeque<E> #Darkorange
17+
interface TransferQueue<E> #Darkorange
18+
class LinkedTransferQueue<E> #Darkorange
19+
20+
Queue <|. Deque
21+
Deque <- LinkedList
22+
23+
ConcurrentLinkedQueue --> Queue
24+
PriorityQueue --> Queue
25+
26+
Queue <.. BlockingQueue
27+
ArrayBlockingQueue ..> BlockingQueue
28+
29+
LinkedBlockingQueue ..> BlockingQueue
30+
31+
DelayQueue .> BlockingQueue
32+
33+
BlockingQueue <.. SynchronousQueue
34+
35+
BlockingQueue <.. PriorityBlockingQueue
36+
37+
ArrayDeque --> Deque
38+
39+
Deque <|.. BlockingDeque
40+
BlockingQueue <|. BlockingDeque
41+
42+
BlockingDeque <. LinkedBlockingDeque
43+
44+
BlockingDeque <.. ConcurrentLinkedDeque
45+
46+
BlockingQueue <|.. TransferQueue
47+
TransferQueue <-- LinkedTransferQueue
48+
49+
50+
note bottom of ConcurrentLinkedDeque
51+
深色表示类在Concurrent包
52+
end note
53+
54+
caption Java 集合框架 queue-deque 模块
55+
56+
right footer https://github.com/c-rainstorm/blog 转载请注明出处
57+
58+
@enduml

res/java-collection-framework-set.pu

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
@startuml java-collection-framework-set
2+
3+
interface Collection<E>
4+
interface Set<E>
5+
class AbstractSet<E>
6+
class CopyOnWriteArraySet<E> #Darkorange
7+
class EnumSet<E extends Enum<E>>
8+
class RegularEnumSet<E extends Enum<E>>
9+
class JumboEnumSet<E extends Enum<E>>
10+
class HashSet<E>
11+
class LinkedHashSet<E>
12+
interface SortedSet<E>
13+
interface NavigableSet<E>
14+
class TreeSet<E>
15+
class ConcurrentSkipListSet<E> #Darkorange
16+
17+
18+
Collection <.. AbstractCollection
19+
AbstractCollection <|- AbstractSet
20+
21+
Collection <|- Set
22+
Set <.. AbstractSet
23+
24+
AbstractSet <|-- HashSet
25+
HashSet <|-- LinkedHashSet
26+
27+
AbstractSet <|- TreeSet
28+
Set <|- SortedSets
29+
SortedSet <|- NavigableSet
30+
NavigableSet <.. TreeSet
31+
32+
AbstractSet <|-- CopyOnWriteArraySet
33+
34+
AbstractSet <|-- ConcurrentSkipListSet
35+
NavigableSet <.. ConcurrentSkipListSet
36+
37+
note bottom of ConcurrentSkipListSet
38+
深色表示类在Concurrent包
39+
end note
40+
41+
AbstractSet <|-- EnumSet
42+
EnumSet <|-- RegularEnumSet
43+
EnumSet <|-- JumboEnumSet
44+
45+
caption Java 集合框架 Set 模块
46+
47+
right footer https://github.com/c-rainstorm/blog 转载请注明出处
48+
49+
@enduml

res/java-collection-framework.pu

Lines changed: 0 additions & 147 deletions
This file was deleted.

0 commit comments

Comments
 (0)