zoukankan      html  css  js  c++  java
  • 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();
        }
    }

  • 相关阅读:
    如何将windows版的vim界面语言(默认为中文)设置成英文(转)
    hdu 1023 Train Problem II 完整高精度模板(以输出大Catalan为例)
    第三届蓝桥杯预赛真题解答
    hdu 1016 Prime Ring Problem (dfs)
    博客搬家
    void main()是错的!
    c,c++产生随机数详解
    高性能网站的十四条黄金法则
    云端
    jQuery Tools:Web开发必备的 jQuery UI 库
  • 原文地址:https://www.cnblogs.com/tuifeideyouran/p/3734138.html
Copyright © 2011-2022 走看看