Chapter 12 外观模式

外观模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个模式使得这一子系统更加容易使用。

外观模式三个阶段:

首先,在设计初期阶段,应该要有意识的将不同的两个层分离。

其次,在开发阶段,子系统往往因为不断的重构演化而变得越来越复杂,增加外观可以提供一个简单的接口,减少他们之间的依赖。

最后,在维护一个遗留的大型系统时,可能这个系统已经非常难以维护和扩展了,可以为系统开发一个外观类。

示例代码如下:

package xiao;
class Fund{
    private Stock2 stock2;
    private Stock3 stock3;
    private Stock1 stock1;
    public Fund(){
        this.stock1 = new Stock1();
        this.stock2 = new Stock2();
        this.stock3 = new Stock3();
    }
    public void BuyFund(){
        stock1.buy();
        stock2.buy();
        stock3.buy();
    }
    public void SellFund(){
        stock1.sell();
        stock2.sell();
        stock3.sell();
    }
}
class Stock1{
    public void buy(){
        System.out.println("buy stock one!");
    }
    public void sell(){
        System.out.println("sell stock one!");
    }
}
class Stock2{
    public void buy(){
        System.out.println("buy stock two!");
    }
    public void sell(){
        System.out.println("sell stock two!");
    }
}
class Stock3{
    public void buy(){
        System.out.println("buy stock three!");
    }
    public void sell(){
        System.out.println("sell stock three!");
    }
}
public class abc {
    public static void main(String[] args) {
        Fund jijin = new Fund();
        jijin.BuyFund();
        jijin.SellFund();
    }
}

原文地址:https://www.cnblogs.com/tuifeideyouran/p/3734138.html