• 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();
        }
    }

  • 相关阅读:
    [转载]ASP.NET中IsPostBack详解
    [转载]论asp.net out、ref、return
    用CSS让字体在一行内显示不换行
    改变时间格式的方法
    JS方法的使用
    [转载] iframe嵌入网页的用法
    iphone6 inline-flex兼容问题
    ActionResult的其它返回值
    为什么java中只允许继承一个类?
    关于asp.net MVC3 ----@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction
  • 原文地址:https://www.cnblogs.com/tuifeideyouran/p/3734138.html
Copyright © 2020-2023  润新知