工厂模式 属于创建型模式
简单工厂模式
通过一个工厂类,以一个条件来创建对应的对象
//业务功能
public interface ICalculation {
double getResult(double numA, double numB);
}
public class CalcAdd implements ICalculation {
@Override
public double getResult(double numA, double numB) {
System.out.println("加法");
return numA + numB;
}
}
public class CalcSubtract implements ICalculation {
@Override
public double getResult(double numA, double numB) {
System.out.println("减法");
return numA - numB;
}
}
/*
* 简单工厂模式 关注:对象的创建
* 建立一个工厂类,对实现了同一接口的或者是存在继承关系的一些类进行实例的创建
*/
public class Test4Simple {
public static void main(String[] args) {
// String operation = "/";
String operation = "+";
// String operation = "-";
// String operation = "*";
double numA = 182, numB = 33;
ICalculation createCalc = CalcSimpleFactory.createCalc(operation);
double result = createCalc.getResult(numA, numB);
System.out.println(result);
}
}
简单工厂的缺陷: 简单工厂创建产品时需要传递相应的参数,如果传递不正确就取不到对象了。
改进:多方法创建不同产品
public class CalcMultipleFactory {
public static ICalculation produceAdd() {
return new CalcAdd();
}
public static ICalculation produceSubtract() {
return new CalcSubtract();
}
public static ICalculation produceMultiply() {
return new CalcMultiply();
}
public static ICalculation produceDivide() {
return new CalcDivide();
}
}
public class Test4Multiple {
public static void main(String[] args) {
double numA = 182, numB = 33;
ICalculation createCalc = CalcMultipleFactory.produceAdd();
double result = createCalc.getResult(numA, numB);
System.out.println(result);
createCalc = CalcMultipleFactory.produceSubtract();
result = createCalc.getResult(numA, numB);
System.out.println(result);
createCalc = CalcMultipleFactory.produceMultiply();
result = createCalc.getResult(numA, numB);
System.out.println(result);
createCalc = CalcMultipleFactory.produceDivide();
result = createCalc.getResult(numA, numB);
System.out.println(result);
}
}
分享到:
相关推荐
Java简单工厂模式和传统模式实现对比,通过简单实例比对两种方式差异,体现传统模式的弊端及工厂模式优势。利于初学者后续接触spring
从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂...简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现,学习了此模式可以为后面的很多中模式打下基础。
简单工厂模式的C++、Java实现代码。
java工厂模式
java抽象工厂模式实现热带工厂,生产水果等等。比较简单的一个程序。
简单工厂模式通过一个工厂类来创建产品对象;
设计模式之工厂模式Java实现和类设计图,包括简单工厂模式、工厂方法模式和抽象工厂模式
设计模式课程资料——简单工厂模式,使用Java实现,在eclipse进行编译
正在学习设计模式,为练习用就用简单工厂模式实现了个简单的四则运算器,很简单,第一次上传东西,初学或者要学设计模式的可以下来看看~~
这是一个简单的java工厂模式实现 本人第一次发资源 请多批评
Java设计模式04简单工厂模式.pdf
NULL 博文链接:https://201112162421.iteye.com/blog/1625464
工厂模式的C++、Java实现代码。
Java设计模式,简单工厂的Demo,具体的思想与实现有很多讲得很好的老师,我是看厉风行老师的视频学的,讲得不错,简单易懂
请用Java面向对象语言,利用简单工厂模式,实现简易计算器程序(加减乘除功能)。 在注释中回答以下问题: 1、 软件设计目标分别是什么? 2、 在相应的代码处解释设计目标实现的方式。
1. 简单工厂模式(Simple Factory) 2. 工厂方法模式(Factory Method) 3. 抽象工厂模式(Abstract Factory) 这三种模式从上到下逐步抽象,并且更具一般性。还有一种分类法,就是将简单工厂模式看为工厂方法模式的一...
抽象工厂模式的简单实现,代码里面有详细的注释,可供初学者学习,有不懂的地方大家可以相互交流
java设计模式【之】抽象工厂模式【源码】【场景:制作咖啡】 * 抽象工厂 * * 创建对象实例时,不要直接 new 类, 而是把这个new 类的动作放在一个工厂的方法中,并返回。 * 在工厂方法的基础上,进一步抽象工厂...