设计模式之工厂模式(一)

在设计模式中,工厂模式十分的常见 在设计模式中,工厂模式十分的常见,举个简单的例子,说明什么是工厂模式,假如我们需要修建一座房子出现 ,举个简单的例子,说明什么是工厂模式,假如我们需要修建一座房子需要砖块,如果我们够勤快,我们自己生产砖块,然后使用其修房子,但是想一想,我们真正的目的是修房子,而不是去生产砖块,所以,生产砖块,完全可以交给砖场去做,我们只需要去买砖,用砖就可以了,这就是工厂模式的现实原型
工厂模式属于创建型模式,创建型模式有如下几类:
简单工厂模式(Simple Factory)
工厂模式(Factory)
抽象工厂模式(Abstract Factory)
单例模式(Singleton)
原型模式(Prototype)
创建者模式(Builder)
在这一节主要讲解简单工厂模式,简单工厂的示例代码如下

//抽象产品类
package com.wepull.simplefactory;

public interface Product {
public void opera();
}


//具体产品实现类
package com.wepull.simplefactory;
//具体产品类1
public class Product1 implements Product {

public void opera() {
// TODO Auto-generated method stub

}

}


package com.wepull.simplefactory;
//具体产品类2
public class Product2 implements Product {

public void opera() {
// TODO Auto-generated method stub

}

}


//工厂类


package com.wepull.simplefactory;

public class SimpleFactory {
// 根据参数不同创建不同的产品
public static Product createProduct(String productName){
if("1".equals(productName)){
return new Product1();
}else if("2".equals(productName)){
return new Product2();
}
return null;
}
}


简单的说,简单工厂模式设计比较简单,如果在代码中出现new对象的情况,就可以考虑使用简单工厂模式了

简单工厂模式的优点是:客户端不再负责new对象了,而是把生产的责任丢给了具体的工厂类,客户端只负责调用对象即可
简单工厂模式的缺点是:工厂类负责创建所有的对象,会导致产品的不断增多,代码量的庞大不利于维护,如果客户端对某些产品的创建方式有不同要求的话,就要不断的去修改工厂类,增加相应的逻辑判断
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值