如果在之前写的简单工厂模式(四则运算)基础上,添加一个‘求M数的N次方’,我们需要改变工厂方法,添加‘Case’语句做判断,这样修改会违背开放-封闭原则。
这次,介绍工厂模式,为每个加减乘除方法添加一个工厂类,让客户动态地实例所需要的工厂类。
结构图:
工厂模式:定义一个用于创建对象的接口,让子类决定实例哪一个类。工厂方法使一个类的实例延迟到其子类。
在之前的简单工厂模式(四则运算)中添加以下几个工厂方法:
专门负责生产“+”的工厂
public class AddFactory implements IFactory{
@Override
public Operation CreateOperation() {
return new OperationAdd();
}
}
专门负责生产“-”的工厂
public class SubFactory implements IFactory{
@Override
public Operation CreateOperation() {
return new OperationSub();
}
}
专门负责生产“*”的工厂
public class MulFactory implements IFactory{
@Override
public Operation CreateOperation() {
return new OperationMul();
}
}
专门负责生产“/”的工厂
public class DivFactory implements IFactory{
@Override
public Operation CreateOperation() {
return new OperationDiv();
}
}
测试类
public class Test {
public static void main(String[] args) {
IFactory operFactory = new AddFactory();
Operation operation = operFactory.CreateOperation();
double numberA = 3;
double numberB = 1;
System.out.println(operation.getResult(numberA, numberB));
}
}
输出结果:
4
相关推荐
在这个“JAVA简单工厂模式四则运算计算器”中,我们将探讨如何使用Java实现一个基于简单工厂模式的计算器,它能够处理加法、减法、乘法和除法四种基本运算。 首先,我们需要定义一个接口,例如命名为`Calculator`,...
在"简单工厂模式(四则运算)"的例子中,我们可以想象有一个计算系统,它需要执行加、减、乘、除四种基本的数学运算。这些运算可以被视为产品,而工厂则是生产这些运算的场所。为了实现这个系统,我们首先会定义一个...
在这个"iOS工厂方法模式(四则运算)demo"中,我们可以看到如何将工厂方法模式应用到实现四则运算的场景中。 首先,我们需要理解工厂方法模式的基本结构。它包含以下几个角色: 1. **抽象产品类(Product)**:定义...
在本Java项目中,"operation 简易四则运算器"是一个基于简单工厂设计模式实现的计算工具,旨在帮助用户进行基本的加减乘除运算。该项目充分体现了面向对象编程的思想,通过封装、继承和多态性来提高代码的可读性和可...
在这个"iOS简单工厂模式(四则运算)demo"中,我们将深入探讨这个模式及其应用。 简单工厂模式,又称为静态工厂方法模式,它提供了一个公共的接口来创建对象,而具体的对象实例化由工厂类内部决定。在四则运算的...
在本例中,"简单工厂模式计算器(C#源码)"是一个使用C#编程语言实现的计算器应用,它运用了简单工厂模式来处理基本的四则运算(加、减、乘、除)。以下是对这个项目中涉及的关键知识点的详细说明: 1. **简单工厂...
本项目“四则运算系统”显然是使用C#设计的一个简单计算器程序,旨在帮助用户进行基本的数学运算,包括加、减、乘、除,并可能具备查看和删除历史计算记录的功能。以下将详细解析这个项目的知识点: 1. **C#基础...
通过本实验,我掌握了使用简单工厂模式编写四则运算程序,并能够通过反射技术改写工厂类。实验结果表明,使用工厂模式和反射技术可以实现灵活的对象创建,并且能够提高代码的可维护性和可扩展性。 七、结论 本实验...
【简单工厂模式】是一种常用的创建型设计模式,它提供了一个创建对象的接口,但让子类决定实例化哪一个类。简单工厂模式使代码能够绕过复杂的实例化逻辑,将对象的创建过程封装起来,使客户端代码更加简洁。 在这个...
在这个实现的计算器项目中,我们利用了简单工厂模式,结合了面向对象编程的三大特性——继承、封装和多态,来构建一个灵活且易于扩展的计算器系统。 首先,我们来看一下简单工厂模式的核心思想。在该模式中,我们...
通过这个程序,我们可以学习到如何在C++中实现一个基本的四则运算计算器,并理解简单工厂模式在实际编程中的应用。 **四则运算的实现** 这个计算器程序包含了加、减、乘、除四种基本的数学运算。在C++中,我们可以...
使用工厂方法模式构建简易四则计算器,并增加指数和对数两种二元运算,类图。
在简单工厂模式中,有一个静态工厂类负责根据输入条件(例如运算类型)返回相应的运算对象(如加法、减法、乘法或除法对象)。这种方式使得客户端代码只需要与工厂交互,而不需要直接与具体的运算类打交道,降低了...
通过这种方式,我们可以创建出一个模块化且易于扩展的计算器系统,无论是简单的四则运算,还是复杂的科学计算,都能轻松应对。同时,由于工厂类的抽象,我们可以轻松地进行单元测试,确保每个计算器在各种场景下都能...
"C#工厂模式_计算器"是一个示例,它展示了如何在C#中应用工厂模式来实现一个计算器,同时也涉及到了多态性这一核心面向对象编程概念。 首先,让我们详细解释一下工厂模式。工厂模式是一种创建型设计模式,它的主要...
本项目中,"简易计算机c#源码"是一个使用C#实现的简单计算器程序,它实现了基本的加、减、乘、除四则运算。通过运用简单工厂模式,该计算器代码具有更好的可扩展性和易于维护的特性。 简单工厂模式是设计模式中的...
Java命令行计算器是一个基于简单工厂模式实现的编程项目,它提供了基本的四则运算功能,包括加、减、乘、除。简单工厂模式是设计模式中的结构型模式,它的主要目的是将对象的创建过程封装起来,使代码更易于维护和...
这个计算器程序能够执行基本的四则运算,即加法、减法、乘法和除法,并且具有用户友好的图形用户界面(GUI)。下面我们将深入探讨这个Java计算器源代码的相关知识点。 1. **Java编程语言**:Java是一种跨平台、面向...
本文将详细探讨如何在C#中应用简单工厂模式来设计一个计算器,实现基本的邻位四则运算。 简单工厂模式是创建型设计模式之一,它的主要作用是提供一个工厂类,负责根据输入条件(例如运算符)动态地创建对象。在本例...