zoukankan      html  css  js  c++  java
  • 在工厂模式

    一个简单的计算器的例子来形容叙事工厂模式

    Operator公共接口

    package com.iss.factory;


    public interface Operator {
    public int getResult(int x, int y);


    }


    Add.java

    package com.iss.factory;


    public class Add implements Operator{


    @Override
    public int getResult(int x, int y) {
    // TODO Auto-generated method stub
    return x+y;
    }


    }

    Minus.java

    package com.iss.factory;


    public class Minus implements Operator{


    @Override
    public int getResult(int x, int y) {
    // TODO Auto-generated method stub
    return x-y;
    }


    }

    Mul.java

    package com.iss.factory;


    public class Mul implements Operator{


    @Override
    public int getResult(int x, int y) {
    // TODO Auto-generated method stub
    return x*y;
    }


    }


    Divide.java

    package com.iss.factory;


    public class Divide implements Operator {


    @Override
    public int getResult(int x, int y) {
    // TODO Auto-generated method stub
    return x/y;
    }


    }


    OperatorFactory.class

    package com.iss.factory;


    public class OperatorFactory {
    private static Operator operator = null;


    public static Operator getOperator(String op) {


    if (op == "+") {
    operator = new Add();
    } else if (op == "-") {
    operator = new Minus();
    } else if (op == "*") {
    operator = new Mul();
    } else if (op == "/") {
    operator = new Divide();
    } else {
    return null;
    }


    return operator;


    }


    }


    Test.java

    package com.iss.factory;


    public class Test {
    public static void main(String[] args) {
    Operator operator = OperatorFactory.getOperator("+");
    System.out.println(operator.getResult(10, 20));
    }


    }

    总结一下:这一事实的主要优点是面向对象的多态性此功能的工厂模式。当程序的实际执行情况将有多个选择状态!





  • 相关阅读:
    MS SQL入门基础:使用SQL Server Profiler
    收藏夹路径设置
    MS SQL入门基础:数据转换服务基本概念
    MS SQL入门基础:复制的概述和术语
    MS SQL入门基础:创建备份设备
    巧用ASP生成PDF文件
    MS SQL入门基础:sql 警报
    MS SQL入门基础:基于HTTP的数据访问
    MS SQL入门基础:XML文档与数据库表
    MS SQL入门基础:复制监视器
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5033861.html
Copyright © 2011-2022 走看看