网站首页 > java教程 正文
工厂方法模式(factory method pattern)
工厂方法模式(factory method pattern):属于对象的创建型模式。定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。
工厂方法模式是类的创建模式,又叫做虚拟构造子(Virtual Constructor)模式或者多态性工厂(Polymorphic Factory)模式。
工厂方法模式UML图
Java
工厂方法模式涉及的角色
抽象角色:工厂方法模式所创建的对象的超类。如图中 Operation。具体角色:具体角色,实现具体角色。如图中 OperationAdd、OperationSub、OperationMul、OperationDiv。抽象工厂角色 :这个角色的是工厂方法模式的核心,任何在模式中创建对象的工厂类必须实现这个接口。如图中 Ifactory。具体工厂角色 :抽象工厂接口的具体实现,含有与业务密切相关的逻辑,并且受到使用者的调用以创建导出类。如图中 AddFactory、SubFactory、MulFactory、DivFactory。
示例代码
运算类 OperationFactory
Java
运算抽象类 AbstractOperation
Java
加法运算类 OperationAdd
Java
减法运算类 OperationSub
Java
乘法运算类 OperationMul
Java
除法运算类 OperationDiv
Java
工厂接口类 IFactory
Java
加法工厂类 AddFactory
Java
减法工厂类 SubFactory
Java
乘法工厂类 MulFactory
Java
除法工厂类 DivFactory
Java
客户端测试类 FactoryMethodTest
Java
工厂方法模式与简单工厂模式比较
工厂方法模式克服了简单工厂模式违背的开放-封闭原则的缺点,它是简单工厂模式的进一步抽象和广,从而降低了客户端与产品的耦合,增加对应计算类的抽象工厂这样就把简单工厂的内部逻辑判断转移到了客户端代码类来进行。本来是改工厂类,而现在是修改客户端。
以上所述是小编给大家介绍的工厂方法模式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的!
Java学习资料(复制下段链接至浏览器即可)
data:textml;charset=UTF-8;base64,5oGt5Zac5L2g77yM5p625p6E5biI5a2m5Lmg576k5Y+35pivNjg2NTc5MDE0Cg==
Java
猜你喜欢
- 2024-10-11 Java的“异常”(JAVA的异常体系)
- 2024-10-11 第四讲《JAVA基础之运算符》,小妙招教你速记、速填坑
- 2024-10-11 容易让人忽视的,java高精度运算(java高精度转低精度的原则)
- 2024-10-11 提高千倍效率的 Java 代码小技巧(java提高班)
- 2024-10-11 一文搞明白java中的位运算、补码、反码、原码
- 2024-10-11 十五、Java运算符-赋值运算符与instanceof运算符
- 2024-10-11 一文掌握Java二、八、十六进制运算实现原理
- 2024-10-11 计算机进制转换(计算机进制转换教程)
- 2024-10-11 Java基础之try catch finally的原理
- 2024-10-11 LeetCode算法第29题:两数相除(计算两数相除并输出结果)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)