java-design-patterns/template-method/etc/template-method.urm.puml

36 lines
895 B
Plaintext
Raw Normal View History

@startuml
package com.iluwatar.templatemethod {
class HitAndRunMethod {
+ HitAndRunMethod()
# confuseTarget(target : String)
# pickTarget() : String
# stealTheItem(target : String)
}
class HalflingThief {
- method : StealingMethod
+ HalflingThief(method : StealingMethod)
+ changeMethod(method : StealingMethod)
+ steal()
}
abstract class StealingMethod {
+ StealingMethod()
# confuseTarget(String) {abstract}
# pickTarget() : String {abstract}
+ steal()
# stealTheItem(String) {abstract}
}
class SubtleMethod {
+ SubtleMethod()
# confuseTarget(target : String)
# pickTarget() : String
# stealTheItem(target : String)
}
class App {
+ App()
+ main(args : String[]) {static}
}
}
HalflingThief --> "-method" StealingMethod
HitAndRunMethod --|> StealingMethod
SubtleMethod --|> StealingMethod
@enduml