第四式 工厂方法模式
定义:定义一个用于创建对象的接口,让子类决定实例化那一个类,对象工厂模式使一个类的实例化延迟到子类。
优点:可以在不知具体实现的情况下编程;更容易扩展对象的新版本;连接平行的类层次。
缺点:具体产品对象和工厂方法的耦合性。
本质:延迟到子类的选择实现。
public interface product { public void createProduct(); } public class concreteProduct implements product { @Override public void createProduct() { // TODO Auto-generated method stub System.out.println("create product"); } } public abstract class factory { protected abstract product factoryMethod(); public void someOptions() { product prod = factoryMethod(); prod.createProduct(); } } public class concreteFactory extends factory { @Override protected product factoryMethod() { // TODO Auto-generated method stub return new concreteProduct(); } } public class user { public static void main(String[] args) { // TODO Auto-generated method stub factory fctry = new concreteFactory(); fctry.someOptions(); } }
工厂方法模式体现了IoC/DI的思想,IoC/DI在实现上本身没有什么难度,只是提供了一种思想,达到了应用程序和外部资源的一种松耦的目的。
时间: 2024-10-07 01:24:39