java设计模式--简单工厂模式
程序员文章站
2022-03-19 23:40:21
从今天开始学习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(); } }
优点:顾客不再过问产品生产细节,全由工厂负责,顾客直接面向工厂对象,明确了个各类的职责。
缺点:当工厂需要添加新的产品时,就需要去修改工厂类,不利于后期维护。