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
| @startuml class RgbMonitor { -IColorState _state -BlackColorState _blackColorState -RedColorState _redColorState -GreenColorState _greenColorState -BlueColorState _blueColorState -YellowColorState _yellowColorState -MagentaColorState _magentaColorState -CyanColorState _cyanColorState -WhiteColorState _whiteColorState +Color Display() +void TurnOnLight(RgbColor rgbColor) +void TurnOffLight(RgbColor rgbColor) +void ToBlackColorState() +void ToRedColorState() +void ToGreenColorState() +void ToBlueColorState() +void ToYellowColorState() +void ToMagentaColorState() +void ToCyanColorState() +void ToWhiteColorState() }
interface IColorState { +Color Display() +void TurnOnRedLight() +void TurnOnGreenLight() +void TurnOnBlueLight() +void TurnOffRedLight() +void TurnOffGreenLight() +void TurnOffBlueLight() }
RgbMonitor *-- IColorState IColorState <|-- BlackColorState IColorState <|-- RedColorState IColorState <|-- GreenColorState IColorState <|-- BlueColorState IColorState <|-- YellowColorState IColorState <|-- MagentaColorState IColorState <|-- CyanColorState IColorState <|-- WhiteColorState @enduml
|
ʕ •ᴥ•ʔ:若不熟悉 UML 類別圖,可參考UML類別圖說明。