一、定义
1)适配器模式:将一个类的接口,转换为客户期望的另一个接口,实现两个接口不兼容的类的相互合作。
2)外观模式:提供一个统一的接口,用于访问子系统的一群接口。提供了一个高层接口,使对子系统的访问更容易。
二、设计方法
1)适配器模式
(1)对象适配器模式:适配器对象实现目标接口,并包含被适配器对象的引用,目标接口方法中,调用被适配器对象的接口方法。
(2)类适配器模式:适配器对象继承目标对象和被适配器对象类(双继承),目标方法中,调用被适配器对象的接口方法。
2)外观模式
定义一个类,包含子系统所有对象的引用,目标方法中,使用子系统多个对象的接口方法
三、体现的思想
1)定义:最小知识原则:要减少对象之间的交互,只和你的密友交谈
2)实现方法:在对象的方法中,只调用遵循以下原则范围内的方法(即如果某对象是调用其他方法的返回值,不要调用该对象的方法):
—对象本身
—方法参数引用对象
—此方法所创建或实例化的对象
—对象的任何组件
3)实例
四、具体案例
1)对象适配器
2)类适配器(多继承,不适用于java)
4)外观者模式
五、装饰者、适配器、外观者模式的区别
适配器将一个对象包装起来以改变其接口;
装饰者将一个对象包装起来增加新的行为和责任;
外观将一群对象包装起来简化其接口。