由于不同的国家提供的电压不统一,要想让一台电脑在所有国家都可以用就需要使用适配器,让不同的电源可以通过转换提供电脑所需要的电压。现在有110v和220v电源电压,电脑的需求电压为220v,则需要写一个适配器使不同的电源都可以使用电脑。
![](https://img-blog.csdn.net/20140508114442312?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemw1OTQzODk5NzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
//对象适配器模式
public class Operation {
public static void main(String[] args) {
Power power110 = new Power110Adapter();
power110.supply();
System.out.println("---------------");
Power power220 = new Power220Adapter();
power220.supply();
}
}
输出结果:
//110电压
public class Power110 {
public void supply(){
System.out.println("提供110v电压");
}
}
//220电压,
public class Power220 {
public void supply(){
System.out.println("提供220v电压");
}
}
//笔记本类
public class NoteBook {
public void work()
{
System.out.println("电脑工作了");
}
}
//电源接口,因为一个电脑只有一个电源接口
public interface Power {
public void supply();
}
//110v适配器
public class Power110Adapter extends Power110 implements Power{
//被适配的类,这样就可以执行该类的work方法。
private NoteBook book = new NoteBook();
//重写方法
@Override
public void supply() {
super.supply();
System.out.println("转换为220V");
book.work();
}
}
//220v适配器
public class Power220Adapter extends Power220 implements Power {
//被适配的类,这样就可以执行该类的work方法。
private NoteBook book = new NoteBook();
//重写方法
@Override
public void supply() {
super.supply();
System.out.println("转换为220V");
book.work();
}
}