简单的工厂模式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单的工厂模式相关的知识,希望对你有一定的参考价值。
从今天开始 每天进步一点点。开始了解并学习设计模式,就从简单的工厂模式开始吧....
简单工厂模式(Simple Factory):不利于产生系列产品
简单工厂模式又称静态工厂方法模式。重命名上就可以看出这个模式一定很简单。它存在的目的很简单:定义一个用于创建对象的接口。
在简单工厂模式中,一个工厂类处于对产品类实例化调用的中心位置上,它决定那一个产品类应当被实例化, 如同一个交通警察站在来往的车辆流中,决定放行那一个方向的车辆向那一个方向流动一样。
先来看看它的组成:
1) 工厂类角色:这是本模式的核心,含有一定的商业逻辑和判断逻辑。在java中它往往由一个具体类实现。
2) 抽象产品角色:它一般是具体产品继承的父类或者实现的接口。在java中由接口或者抽象类来实现。
3) 具体产品角色:工厂类所创建的对象就是此角色的实例。在java中由一个具体类实现。
1) 工厂类角色:这是本模式的核心,含有一定的商业逻辑和判断逻辑。在java中它往往由一个具体类实现。
2) 抽象产品角色:它一般是具体产品继承的父类或者实现的接口。在java中由接口或者抽象类来实现。
3) 具体产品角色:工厂类所创建的对象就是此角色的实例。在java中由一个具体类实现。
一句话概括就是
简单工厂模式是由一个具体的类去创建其他类的实例,父类是相同的,父类是具体的。
接下来 就用简单的工厂模式设计一个计算器:
首先 我们先创建一个实体类:
![技术分享](https://image.cha138.com/20210825/70b81c4b34384b3bbbf5abf7399f7c68.jpg)
接着就开始创建加减乘除的实体类来继承这个基础的具体父类
然后就开始创建工厂类
最终的运行结果:
这个计算器只需要输入运算符号,工厂就实例化出合适的对象,通过多态,返回父类的方式实现了计算器的结果。
以上是关于简单的工厂模式的主要内容,如果未能解决你的问题,请参考以下文章
JAVA设计模式——工厂模式简单工厂模式工厂方法模式抽象工厂模式