美文网首页
设计模式--外观模式

设计模式--外观模式

作者: 乌尔苏拉 | 来源:发表于2022-07-30 14:28 被阅读0次
    1.定义:

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

    2.示例代码:

    Java代码

    /*A模块的接口*/  
    public interface AModuleApi{  
       public void testA();  
    }  
    /*A模块的实现*/  
    public class AModuleImpl implements AModuleApi{  
       public void testA(){  
           System.out.println("现在A模块里操作testA方法");  
       }  
    }  
    /*B模块的接口*/  
    public interface BModuleApi{  
       public void testB();  
    }  
    /*B模块的实现*/  
    public class BModuleImpl implements BModuleApi{  
       public void testB(){  
           System.out.println("现在B模块里操作testB方法");  
       }  
    }  
    /*C模块的接口*/  
    public interface CModuleApi{  
       public void testC();  
    }  
    /*C模块的实现*/  
    public class CModuleImpl implements CModuleApi{  
       public void testC(){  
           System.out.println("现在C模块里操作testC方法");  
       }  
    }  
    

    Java代码

    /*定义外观对象*/  
    public class Facade{  
        public void test(){  
           AModuleApi a = new AModuleImpl();  
           a.testA();  
           BModuleApi b = new BModuleImpl();  
           b.testB();  
           CModuleApi c = new CModuleImpl();  
           c.testC();  
        }  
    }  
    

    Java代码

    /*客户端调用*/  
    public class Client{  
        public static void main(String args[]){  
            new Facade().test();  
        }  
    } 
    
    3.实际应用:

    外观模式的目的不是给子系统添加新的功能接口,而是为了让外部减少与子系统内部多个模块的交互,松散耦合,从而让外部能够更简单的使用子系统。外观应该是包装已有的功能,它主要负责组合已有功能来实现客户需求,而不是添加新的实现。

    外观模式的本质:封装交互,简化调用

    相关文章

      网友评论

          本文标题:设计模式--外观模式

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