引言:
本文介绍简单工厂模式设计模式的概念和用途,用简单实例来理解简单工厂模式。
简单工厂设计模式简介:
简单工厂模式是一种创建型设计模式,它提供了一种创建对象的最简单方式,通过将创建对象的逻辑封装在一个单独的类中,这个类被称为简单工厂。简单工厂模式通常包括一个工厂类和多个产品类。
示例代码解析
这里我用了鲜花做实例
1.Flowers.java
定义Flowers接口
ackage Simple_Factory_Pattern;
public interface Flowers {
public void show();//定义方法
}
2.Rose.java
接口实现类--玫瑰花
package Simple_Factory_Pattern;
public class Rose implements Flowers{
public Rose(){
System.out.println("玫瑰发芽");//无参构造器
}
@Override
public void show() {
System.out.println("玫瑰开花");//重写接口方法
}
}
3.Tulip.java
接口实现类--郁金香
package Simple_Factory_Pattern;
public class Tulip implements Flowers{
public Tulip(){
System.out.println("郁金香发芽");
}
@Override
public void show() {
System.out.println("郁金香开花");
}
}
4.FlowersFactory.java
工厂类--通常为静态类,通过识别字符串生产实体
package Simple_Factory_Pattern;
public class FlowersFactory {
public static Flowers getFlower(String type){
Flowers flower=null;
if (type.equals("玫瑰")){//判断花种
flower=new Rose();
System.out.println("种植玫瑰");
return flower;
} else if (type.equals("郁金香")) {
flower=new Tulip();
System.out.println("种植郁金香");
return flower;
}
return flower;
}
}
创建实例
到这里就可以运行啦
package Simple_Factory_Pattern;
public class Client {
public static void main(String[] args) {
Flowers flowers;
flowers=FlowersFactory.getFlower("玫瑰");//调用工厂生产实体
flowers.show();
}
}
总结
简单工厂模式是一种创建型设计模式,它通过一个工厂类来负责创建对象,将对象的创建逻辑封装在工厂类中,使得客户端无需知道具体的实现细节,只需要通过工厂类来获取所需的产品实例。这种方式能够降低客户端和具体产品类之间的耦合度,提高系统的灵活性和可维护性。