-
Notifications
You must be signed in to change notification settings - Fork 0
/
Sets and Maps.puml
40 lines (36 loc) · 1.14 KB
/
Sets and Maps.puml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
@startuml
!include include/map-set.puml
package java.util {
' Directly-corresponding interfaces
together {
interface SequencedMap<K,V> extends Map
interface SequencedSet<E> extends SequencedCollection, Set
}
together {
interface SortedMap<K,V> extends SequencedMap
interface SortedSet<E> extends SequencedSet
}
together {
interface NavigableMap<K,V> extends SortedMap
interface NavigableSet<E> extends SortedSet
}
' Maps
class EnumMap<K extends Enum<K>,V> extends AbstractMap
class IdentityHashMap<K,V> <<reference-equality>> extends AbstractMap
class WeakHashMap<K,V> extends AbstractMap
class HashMap<K,V> extends AbstractMap
class LinkedHashMap<K,V> extends HashMap implements SequencedMap
class TreeMap<K,V> extends AbstractMap implements NavigableMap {
Red-Black Tree
}
' Sets
abstract EnumSet<E extends Enum<E>> <<sealed>> extends AbstractSet {
Bit Flags
}
class HashSet<E> extends AbstractSet
HashSet *-r- HashMap
class LinkedHashSet<E> extends HashSet implements SequencedSet
class TreeSet<E> extends AbstractSet implements NavigableSet
TreeSet *-r- TreeMap
}
@enduml