JAVA设计模式之:工厂模式(上)--工厂方法模式

工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。工厂模式一般有两种类型:
- 列表内容
- 工厂方法模式
- 及抽象工厂模式(是工厂方法模式的扩展)
一般在什么情况下使用工厂方法模式呢?
- 1,有多个类似(功能相似)的对象实例需要创建(new)。
- 2,写代码过程中不能事先知道需要创建哪种类型,多少数量等情况下实例对象。
- 3,扩展性的考虑,当增加实体对对象类型时,我们要方便快速地实现对象创建。


工厂方法模式代码演示
/**
* 生产车子的接口(要实现的功能就是制造车子)
* @description:
*/
public interface MakeCarInterface {
void produce();//实现了生产方法
}
/**
*功能是生产车子底盘
* @description:
*/
public class CarBottom implements MakeCarInterface {

@Override
public void produce() {
    System.out.println("******我生产车底盘************");
}

}
/**
*功能是生产车子顶部
* @description:
*/
public class CarHead implements MakeCarInterface {

@Override
public void produce() {
    System.out.println("******我生产车头************");
}

}


测试类:
public class Test {
public static void main(String[] args) {
//如果没有工厂方法,我们要获取对象就需要一个一个地new出来
MakeCarInterface car1=new CarHead();
car1.produce();
System.out.println(“———–”);
//有了生产对象实例的工厂类,我们就可以直接使用工厂类的相应方法
MakeCarInterface car2=new CarBottom();
car2.produce();
CarFactory factory=new CarFactory();
System.out.println(“————-“);
MakeCarInterface car3=factory.getHair(“head”);
car3.produce();
CarBottom car4=(CarBottom) factory.getHairByClassName(“factory.CarBottom”);
car4.produce();
}
}
工厂方法模式完全实现‘开-闭 原则,实现了可扩展。复杂的层次结构,我们可以应用于产品结果复杂的场合。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值