简介
将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作
主要模块
- 目标接口
- 适配者
- 适配器
主要分为三种,类适配器,接口适配器
例子
类适配器
public class ClassAdapt {
//被是配置接口
public interface SourceInterface{
void work();
}
//被适配者类
public static class Source implements SourceInterface{
@Override
public void work() {
System.out.println("上班。。。。。");
}
}
//适配器接口
public interface AdaptInterface extends SourceInterface{
void punchCard();
}
//适配器
public static class Adapt extends Source implements AdaptInterface{
@Override
public void punchCard() {
System.out.println("打卡。。。。。");
}
}
//测试方法
public static void main(String[] args) {
//创建适配器
Adapt adapt = new Adapt();
//执行业务
adapt.work();//上班。。。。。
adapt.punchCard();//打卡。。。。。
}
}
接口适配器
public class InterfaceAdapt {
//家务接口
public interface FamilyWork{
void washing();
void sweep();
}
//接口适配器不进行实现
public class Adapt implements FamilyWork{
@Override
public void washing() {}
@Override
public void sweep() {}
}
//我自己这个类,实现了家务,但是我只洗完
public class Myself extends Adapt implements FamilyWork{
//在实现接口的同时,不用覆写多有的方法
@Override
public void washing() {
System.out.println("我只洗完");
}
}
}