美文网首页
外观模式之Context

外观模式之Context

作者: wa11e | 来源:发表于2017-10-31 16:25 被阅读0次

    概念

    为系统中的一组接口提过一个一致的界面,此模式定义一个高层接口,这个接口使得这一子系统更加容易使用.

    举个栗子

    不懂股票的人,将钱交给理财基金,让他们负责购买股票,并抽取一定的佣金,而对于人来说,理财基金就是更高层的接口,负责一致的买和卖.

    来看看UML图

    //股票
    public class Stock1 {
        public void buy() {
            System.out.println("Buy Stock1");
        }
        
        public void sell() {
            System.out.println("Sell Stock1");
        }
        }
        //国债
        public class Stock2 {
        ...
        }
        //债券
        public class Stock3 {
        ...
    }
    

    定义理财基金,高层接口

    public class Facade {
    
        Stock1 stock1;
        Stock2 stock2;
        Stock3 stock3;
    
        public Facade(){
            stock1 = new Stock1();
            stock2 = new Stock2();
            stock3 = new Stock3();
        }
        
        public void buy(){
            stock1.buy();
            stock2.buy();
            stock3.buy();
        }
    
        public void sell(){
            stock1.sell();
            stock2.sell();
            stock3.sell();
        }
    }
    

    使用

    Facade facade = new Facade();
    facade.buy();
    facade.sell()
    

    Android中的外观模式

    外观模式在Android中也非常常见,使用率非常高,那就是Context,当我们去获取各式各样的资源文件时,以及对四大组件进行操作,使用一些系统的服务,都可以使用Context就可以去获取,Context为我们提供了一键式服务,当然是外观模式了.(源码比较简单,就不分析了)Context就是外观模式中的高层接口.

    结语

    有错请指出,谢谢.

    学无止境.

    相关文章

      网友评论

          本文标题:外观模式之Context

          本文链接:https://www.haomeiwen.com/subject/lybbpxtx.html