优点:
- 让两个没有关系的类,在一起运行
- 类的透明性
- 类的复用度
- 灵活性非常好
缺点:
- 局限性
角色:
- Target目标角色
- Adaptee源角色
- Adapter适配器角色
Target
package com.memory.adapter;
/**
*
* 目标角色
*
* @author Administrator
*
*/
public interface Target {
public void request();
}
Adaptee
package com.memory.adapter;
/**
*
* 源角色
*
* @author Administrator
*
*/
public class Adaptee {
/**
* 原有的业务逻辑
*/
public void onWork() {
System.out.println("源有业务的方法输出");
}
}
Adapter
package com.memory.adapter;
/**
*
* 适配器角色
*
* @author Administrator
*
*/
public class Adapter extends Adaptee implements Target {
@Override
public void request() {
// TODO Auto-generated method stub
System.out.println("适配器增加的方法输出");
super.onWork();
}
}
// 适配后的
Target target2 = new Adapter();
target2.request();
//输出结果
启动应用成功!开启美好的一天
适配器增加的方法输出
源有业务的方法输出