设计模式之-创建型-工厂模式
# 前言
工厂模式是一种创建型模式,定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。工厂模式是比较常用的设计模式之一,相信大家日常开发也或多或少使用过。
# 场景
当一个类不知道它所必须创建的对象的类的时候。
当一个类希望由它的子类来指定它所创建的对象的时候。
# 案例
比如某工厂同时生产汽车配件,也生产飞机配件,我们就可以定义一个产品接口,以及对应产品子类,对应工厂来生产对应产品
# 产品接口
public interface Product {
Product create();
}
1
2
3
4
5
2
3
4
5
# 具体产品
汽车配件
public class CarPartsProduct implements Product{
public Product create(){
System.out.println("这是一个汽车配件!");
}
}
1
2
3
4
5
6
2
3
4
5
6
飞机配件
public class AircraftPartsProduct implements Product{
public Product create(){
System.out.println("这是一个飞机配件!");
}
}
1
2
3
4
5
6
2
3
4
5
6
# 工厂类
工厂接口,或者是抽象类
public interface ProductFactory{
Product buildProduct();
}
1
2
3
2
3
public class CarProductFactory implements ProductFactory{
Product buildProduct(){
return new CarPartsProduct();
}
}
1
2
3
4
5
6
7
2
3
4
5
6
7
public class AirProductFactory implements ProductFactory{
Product buildProduct(){
return new AircraftPartsProduct();
}
}
1
2
3
4
5
6
7
2
3
4
5
6
7
# 扩展
当需要新增产品时,只需要新增工厂即可,不用修改原来的代码!
最后更新时间: 2024/12/26, 17:56:54