factory_method.puml 761 字节
Newer Older
门心叼龙's avatar
门心叼龙 已提交
1
@startuml
门心叼龙's avatar
门心叼龙 已提交
2
skinparam classAttributeIconSize 0
门心叼龙's avatar
门心叼龙 已提交
3
package "Factory Method Pattern"{
门心叼龙's avatar
门心叼龙 已提交
4

门心叼龙's avatar
门心叼龙 已提交
5
    interface IOperate{
门心叼龙's avatar
门心叼龙 已提交
6
        +oprerate(int left,int right):int
门心叼龙's avatar
门心叼龙 已提交
7
    }
门心叼龙's avatar
门心叼龙 已提交
8 9 10 11
    note right:操作协议

    class OperateAdd
    note bottom:加法对象
门心叼龙's avatar
门心叼龙 已提交
12
    class OperateAdd implements IOperate
门心叼龙's avatar
门心叼龙 已提交
13 14 15

    class OperateSub
    note bottom:减法对象
门心叼龙's avatar
门心叼龙 已提交
16 17 18
    class OperateSub implements IOperate

    interface IOperateFactory{
门心叼龙's avatar
门心叼龙 已提交
19
        +createOperate():IOperate
门心叼龙's avatar
门心叼龙 已提交
20
    }
门心叼龙's avatar
门心叼龙 已提交
21 22 23
    note top:定义一个创建对象的接口,具体的创建类型由子类完成
    class AddFactory
    note bottom:加法工厂
门心叼龙's avatar
门心叼龙 已提交
24
    class AddFactory implements IOperateFactory
门心叼龙's avatar
门心叼龙 已提交
25 26 27

    class SubFactory
    note bottom:减法工厂
门心叼龙's avatar
门心叼龙 已提交
28 29 30 31 32
    class SubFactory implements IOperateFactory

    IOperateFactory .> IOperate
}
@enduml