欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java设计模式--简单工厂模式

程序员文章站 2022-06-19 16:34:11
从今天开始学习java设计模式,记下并分享自己的一些笔记。 简单工厂模式 :简单工厂模式又叫静态工厂方法模式,它定义了一个具体的工厂类负责创建一些类的实例。 工厂就是用来制作产品的地方。假设有一个工厂可以生产汽车和自行车,他们具有相同的特性行驶。 首先,我们先创建一个具有相同特性的产品抽象类Prod ......

  从今天开始学习java设计模式,记下并分享自己的一些笔记。

 简单工厂模式 :简单工厂模式又叫静态工厂方法模式,它定义了一个具体的工厂类负责创建一些类的实例。

工厂就是用来制作产品的地方。假设有一个工厂可以生产汽车和自行车,他们具有相同的特性行驶。

首先,我们先创建一个具有相同特性的产品抽象类product() 它具有一个抽象方法run(),创建两个产品继承产品类

public abstract class product {

    public abstract void run();

}

public class car extends product {
    @override
    public void run() {
        system.out.println("drive car");
    }
}

public class bicycle extends product {
    @override
    public void run() {
        system.out.println("ride on a bicycle");
    }
}

接着创建一个工厂用来生产产品

public class factory {
    public static product createproduct(string productname){
        product product = null;
        switch (productname){
            case "car":
                product = new car();
                break;
            case "bicycle" :
                product = new bicycle();
                break;
        }
        return product;
    }
}

当顾客想要某种商品时直接告诉工厂就可以了,而不关心工厂具体生产产品的细节

public class customer {
    public static void main(string[] args) {
        product car = factory.createproduct("car");
        car.run();
        product bicycle = factory.createproduct("bicycle");
        bicycle.run();
    }
}

优点:顾客不再过问产品生产细节,全由工厂负责,顾客直接面向工厂对象,明确了个各类的职责。

缺点:当工厂需要添加新的产品时,就需要去修改工厂类,不利于后期维护。