一、设计模式之简单工厂模式

简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。

下面我们看代码:

1. 定义一个操作接口:Operator.class

package com.hmh.operator;

import lombok.Data;


@Data
public abstract class Operator {

    public double num1;
    public double num2;

    public abstract double calcNum();
}

2. 定义具体的操作类:

OperatorAdd.clss加法操作类,
OperatorSub.class减法操作类。。。去继承操作类
package com.hmh.operator;


public class OperatorAdd extends Operator {
    @Override
    public double calcNum() {
        return num1 + num2;
    }
}

public class OperatorSub extends Operator {
    @Override
    public double calcNum() {
        return num1-num2;
    }
}

3. 定义简单工厂类:OperatorFactory.class

package com.hmh.operator;


/**
 * 1、简单工厂模式
 */
public class OperatorFactory {

    public static Operator createOperator(String operator) {
        switch (operator) {
            case "+":
                return new OperatorAdd();
            case "-":
                return new OperatorSub();
            default:
                return null;
        }
    }
}

4.测试代码:

/**
 * 工厂模式
 */
public class TestOperator {

    public static void main(String[] args) {
        Operator operator = OperatorFactory.createOperator("+");
        operator.setNum1(2);
        operator.setNum2(5);
        System.out.print("num1+num2="+operator.calcNum());
    }
}

 

 
posted @ 2019-05-23 17:44  我的1024  阅读(210)  评论(0编辑  收藏  举报