设计模式 工厂方法模式
工厂方法(FactoryMethod)模式的定义:定义一个创建产品对象的工厂接口,将产品对象的实际创建工作推迟到具体子工厂类当中。这满足创建型模式中所要求的“创建与使用相分离”的特点。
作为一种创建类模式,在任何需要生成复杂对象的地方,都可以使用工厂方法模式。有一点需要注意的地方就是复杂对象适合使用工厂模式,而简单对象,特别是只需要通过 new 就可以完成创建的对象,无需使用工厂模式。如果使用工厂模式,就需要引入一个工厂类,会增加系统的复杂度。
public class FactoryMethod {
public Fruits createFruits(Class<?> c) {
Fruits fruits = null;
try {
fruits = (Fruits) c.newInstance();
} catch (InstantiationException | IllegalAccessException e) {
e.printStackTrace();
}
return fruits;
}
}
public interface Fruits {
public void show();
}
public class Apple implements Fruits{
@Override
public void show() {
System.out.println("this is an apple");
}
}
public class Orange implements Fruits{
@Override
public void show() {
System.out.println("this is an orange");
}
}
本文深入讲解了工厂方法模式,一种创建型设计模式。通过定义创建产品对象的工厂接口,将实际创建工作延迟到子类,实现了创建与使用的分离。示例代码展示了如何在需要生成复杂对象的场景下应用此模式。

1057

被折叠的 条评论
为什么被折叠?



