设计模式点滴

策略模式实际上是用的组合思想,而工厂方法模式是继承的思想。

 

装饰者模式是用组合扩展继承的功能,一层层包裹,以添加新的行为,最常见的如Java I/O.

 

 

1、工厂方法模式:

工厂方法的实现中,通常父类会是一个抽象类,里面包含创建所需对象的抽象方法,这些抽象方法就是工厂方法。

这里要注意一个问题,子类在实现这些抽象方法的时候,通常并不是真的由子类来实现具体的功能,而是在子类的方法里面做选择,选择具体的产品实现对象。

父类里面,通常会有使用这些产品对象来实现一定的功能的方法,而且这些方法所实现的功能通常都是公共的功能,不管子类选择了何种具体的产品实现,这些方法的功能总是能正确执行。

/**
* 创建器,声明工厂方法
*/
public abstract class Creator {
    /**
    * 创建Product的工厂方法
    * @return Product对象
    */
    protected abstract Product factoryMethod();
    /**
    * 示意方法,实现某些功能的方法
    */
    public void someOperation() {
       //通常在这些方法实现中,需要调用工厂方法来获取Product对象
       Product product = factoryMethod();
    }
}
 2、

 

 

你可能感兴趣的:(设计模式)