hooyantsing's Blog

P62 对象适配器-电压问题

字数统计: 158阅读时长: 1 min
2020/11/09

尚硅谷Java设计模式(图解+框架源码剖析)

对象适配器

”对象适配器”对“类适配器“进行了改进。众所周知,使用”继承“的方式,会造成很高的耦合,因此替换成”聚合“。

大体代码和上节相同,仅展示改进的地方。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class VoltageAdapter implements IVoltage5V {
private Voltage220V voltage220V;
public VoltageAdapter(Voltage220V v){
this.voltage220V = v;
}

@Override
public int output5V() {
if (voltage220V != null){
int srcV = voltage220V.output220V();
int dstV = srcV / 44;
return dstV;
}
return 0;
}
}

测试

1
2
3
4
5
6
7
public class Client {
public static void main(String[] args) {
System.out.println("===== 对象适配器模式 =====");
Phone phone = new Phone();
phone.charging(new VoltageAdapter(new Voltage220V()));
}
}
CATALOG
  1. 1. 对象适配器