Java设计模式之简单工厂模式

简单工厂模式(SimpleFactory)是类的创建模式,又叫做静态工厂方法模式,是最基本的设计模式。由一个工厂对象决定创建出哪一种产品的实例,三个重要的角色,工厂类、目标类抽象接口、目标对象类;工厂类包含静态的工厂方法。

伪代码

package testdaemo.bean;

import org.springframework.util.Assert;

/**
 * 简单工厂模式
 * 静态工厂方法类
 */
public class DepotFactory {

    private DepotFactory(){
    }

    public static Che createObject(String flag){
        Che che = null;
        switch (flag){
            case "bike":
                che = new Bike();
                break;
            case "car":
                che = new Car();
                break;
            case "train":
                che = new Train();
                break;
            case "cart":
                che = new Cart();
                break;
            default:
                Assert.isTrue(false,"无法生产出对应的车子。");
        }
        return che;
    }
}

工厂类根据传入的参数决定创建哪一类产品的对象实例。核心是工厂类,这个类含有必要的逻辑判断,客户端直接使用工厂方法创建的实例对象,实现了对责任的分割。

由于简单工厂模式使用静态方法作为工厂方法,不能被子类继承,工厂角色无法基于继承的等级结构。当对象类层次逻辑较深时,不利于拓展。违反了开闭原则:无法在系统无需修改的情况下,拓展其功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值