49 lines
1.2 KiB
Plaintext
49 lines
1.2 KiB
Plaintext
@startuml
|
|
package com.iluwatar.memento {
|
|
class App {
|
|
- LOGGER : Logger {static}
|
|
+ App()
|
|
+ main(args : String[]) {static}
|
|
}
|
|
class Star {
|
|
- ageYears : int
|
|
- massTons : int
|
|
- type : StarType
|
|
+ Star(startType : StarType, startAge : int, startMass : int)
|
|
~ getMemento() : StarMemento
|
|
~ setMemento(memento : StarMemento)
|
|
+ timePasses()
|
|
+ toString() : String
|
|
}
|
|
-class StarMementoInternal {
|
|
- ageYears : int
|
|
- massTons : int
|
|
- type : StarType
|
|
- StarMementoInternal()
|
|
+ getAgeYears() : int
|
|
+ getMassTons() : int
|
|
+ getType() : StarType
|
|
+ setAgeYears(ageYears : int)
|
|
+ setMassTons(massTons : int)
|
|
+ setType(type : StarType)
|
|
}
|
|
interface StarMemento {
|
|
}
|
|
enum StarType {
|
|
+ DEAD {static}
|
|
+ RED_GIANT {static}
|
|
+ SUN {static}
|
|
+ SUPERNOVA {static}
|
|
+ UNDEFINED {static}
|
|
+ WHITE_DWARF {static}
|
|
- title : String
|
|
+ toString() : String
|
|
+ valueOf(name : String) : StarType {static}
|
|
+ values() : StarType[] {static}
|
|
}
|
|
}
|
|
StarMementoInternal --> "-type" StarType
|
|
Star --> "-type" StarType
|
|
StarMementoInternal ..+ Star
|
|
StarMementoInternal ..|> StarMemento
|
|
@enduml |