黑马程序员技术交流社区

标题: 【上海校区】java设计模式之 简单工厂模式 [打印本页]

作者: 不二晨    时间: 2018-8-29 09:58
标题: 【上海校区】java设计模式之 简单工厂模式

工厂模式从字面可以理解为批量生产的意思,也就是说一个类的创建可以进行批量的生产,那么对于批量生产类其实有一个公共的特点,那就是肯定有一个模型,不然不可能批量,从这种思想我们可以想到在java面向对象中,该思想不谋为何,就是事物的抽象,通过抽象的事物可以创建我们现实生活中的具体事物。

因此对于工厂模型我们可以这么归类:

1: 要想实现工厂模式,必须要有一个模型,这个模型就是事物的抽象,拥有对象的基本特征。

2:要想生成多个对象的特征,必须需要多个类去继承该模型的基本特征。


【JAVA中哪些地方用到了工厂模式】

1:在spring中。容器创建bean的实例

2:在运用动态代理中也存在



【具体使用】

【场景】自定义计算器,接收键盘数字可以进行加减乘除等基本的数字运算

首先建立模型,也就是事物的抽象类,在改类中包含基本的事物特征

建立加减乘除四个四类,这四个子类都继承Operation基本类,并重写计算结果的方法,即getResult()方法

1:

:2:

3

4:


子类写好之后,可以思考,java的三大特性  封装  继承  多态 在这样的业务中刚好可以使用多太,因为一个父类下面有四个子类,在我们业务中,不管是要进行加还是减,最终都是使用Operation的一个子类,建立一个方法,可以产生不同的子类,这个类其实就是工厂类




测试结果:




以上就是简单工厂的设计思想,值得我们去思考。

结构图



作者: 不二晨    时间: 2018-8-30 17:05
奈斯,加油加油
作者: 小影姐姐    时间: 2018-8-30 18:02
奈斯,加油加油





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2