zoukankan      html  css  js  c++  java
  • 浅谈Java设计模式——简单工厂模式(SimpleFactory)

    一、定义

            通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。

    二、类图

    三、理解

            Operation为抽象类,它定义了一个抽象方法getResult;OperationAdd和OperationSubtraction两个类为Operation的子类,实现了它的getResult方法,OperationAdd为加法类,OperationSubtraction为减法类。

    四、代码实现

    Operation抽象类

    /**
     * 运算超类
     */
    public abstract class Operation {
        public abstract double getResult(double t1, double t2);
    }

    OperationAdd类

    /**
     * 加法操作
     */
    public class OperationAdd extends Operation {
        @Override
        public double getResult(double t1, double t2) {
            return t1 + t2;
        }
    }

    OperationSubtraction类

    /**
     * 减法操作
     */
    public class OperationSubtraction extends Operation {
        @Override
        public double getResult(double t1, double t2) {
            return t1 - t2;
        }
    }

    OperationFactory类

    /**
     * 简单工厂实现
     */
    public class OperationFactory {
        public static Operation createOperate(String operate) throws Exception {
            Operation oper = null;
    
            switch (operate) {
                case "+":
                    oper = new OperationAdd();
                    break;
                case "-":
                    oper = new OperationSubtraction();
                    break;
                default:
                    throw new Exception("no search operate!");
            }
    
            return oper;
        }
    }

  • 相关阅读:
    Flutter 中的基本路由
    BottomNavigationBar 自定义 底部导航条
    StatefulWidget 有状态组件
    flutte页面布局四
    flutter页面布局三
    flutter页面布局二
    设计模式-工厂方法模式
    设计模式-代理模式
    设计模式-装饰模式
    SpringBoot项目部署到服务器上,tomcat不启动该项目
  • 原文地址:https://www.cnblogs.com/IdealSpring/p/11871179.html
Copyright © 2011-2022 走看看