類別圖:動物園管理員(訪問者模式)

Example: 動物園管理員


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
41
42
43
44
45
46
47
@startuml Example-ZooKeeper-Visitor-Pattern

interface IFeeder {
+Feed(Monkey)
+Feed(Cow)
+Feed(Lion)
}

class Feeder {
+Feed(Monkey)
+Feed(Cow)
+Feed(Lion)
}

interface IFeedable {
+FeedBy(IFeeder)
}

class Monkey {
+FeedBy(IFeeder)
}

class Cow {
+FeedBy(IFeeder)
}

class Lion {
+FeedBy(IFeeder)
}

IFeeder <|.. Feeder
IFeedable <|.. Monkey
IFeedable <|.. Cow
IFeedable <|.. Lion

Feeder --> Monkey
Feeder --> Cow
Feeder --> Lion

class Zoo {
+FeedAnimals()
}

Zoo --> Feeder
Zoo --> IFeedable

@enduml

ʕ •ᴥ•ʔ:若不熟悉 UML 類別圖,可參考UML類別圖說明

Share