1. 使用适配器模式实现家电通用案例。电视机使用两相插头,洗衣机使用三相插头。
时间: 2024-03-12 07:45:48 浏览: 18
适配器模式可以解决这个问题。我们可以定义一个通用的插头接口,然后电视机和洗衣机分别实现自己的插头接口,再定义一个适配器类,将洗衣机的三相插头转换成电视机可以使用的两相插头。
具体实现可以参考以下代码:
```java
// 定义通用插头接口
public interface Plug {
void power();
}
// 电视机使用的两相插头
public class TwoPlug implements Plug {
@Override
public void power() {
System.out.println("使用两相插头供电");
}
}
// 洗衣机使用的三相插头
public class ThreePlug {
public void powerWithThree() {
System.out.println("使用三相插头供电");
}
}
// 定义适配器类,将三相插头转换成两相插头
public class PlugAdapter implements Plug {
private ThreePlug threePlug;
public PlugAdapter(ThreePlug threePlug) {
this.threePlug = threePlug;
}
@Override
public void power() {
System.out.println("适配器开始工作,将三相插头转换成两相插头");
threePlug.powerWithThree();
}
}
// 测试代码
public class Test {
public static void main(String[] args) {
TwoPlug twoPlug = new TwoPlug();
twoPlug.power();
ThreePlug threePlug = new ThreePlug();
Plug adapter = new PlugAdapter(threePlug);
adapter.power();
}
}
```
输出结果:
```
使用两相插头供电
适配器开始工作,将三相插头转换成两相插头
使用三相插头供电
```