适配器模式
概念
有时候在程序中需要对接口进行适配,也就是已有的接口(实现类的方法)在某个业务上不能满足我们的需要,需要我们改写下已有的接口,使之符合我们的需要。但是已有的接口不能动(因为可能项目中其他地方已经在用这个接口),这时候就需要适配器来解决这个问题了。
- 定义: 适配器模式(Adapter Pattern):将一个类的接口转换成客户期望的另一个接口,让原本不兼容的接口可以合作无间。
实例
举个例子吧,中国电流标准电压是220v,笔记本电脑需要的电压是20v,这时就需要个电源适配器来让笔记本正常工作了。
|
|
运行结果很显然不对,这时就需要我们用适配器来更改下了。1234567//适配器public class ElectricAdapter extends GBElectric { public void display() { System.out.println("20V电流"); }}
客户端代码变为:12345678910public class Client { public static void main(String[] args) { Electric elec ; elec = new ElectricAdapter(); Computer computer = new Computer(elec); computer.work(); }}运行结果:20V电流
可以看到我们只是扩展了原本的GBElectric类与改了下客户端代码,原本接口(GBElectric )与后端(Computer)代码不变,完全符合开闭原则。
总结
缺点
- java不支持多继承,一次只能适配一个接口
适用场景
- 现有接口不满足业务需求时,需要更改