适配器模式的作用:
将接口转换成另一种形式并保留原来的特性。
适配器编案例_一个参数支持多种类型
//bean
@Data
public class User {
private String name;
private String age;
private String sex;
}
//bean
@Data
public class Employees {
private String employeesName;
private String employeesAge;
private String employeesSex;
}
/**
* 适配器模式-源(被适配的对象)
*
*/
public class Adaptee {
public void forUser(User user){
System.out.println("名称:"+user.getName()+"年龄:"+user.getAge());
}
}
/**
* 适配器模式 -适配器(链接被适配对象和目标对象)
*/
public class Adapter extends User {
private Employees employees;
public Adapter(Employees employees){
this.employees=employees;
}
@Override
public String getName() {
return employees.getEmployeesName();
}
@Override
public String getAge() {
return employees.getEmployeesAge();
}
@Override
public String getSex() {
return employees.getEmployeesSex();
}
}
/**
* 测试
*/
public class AdapterTest {
public static void main(String[] args) {
Employees employees=new Employees();
employees.setEmployeesAge("19");
employees.setEmployeesName("小红");
employees.setEmployeesSex("女");
User user=new User();
user.setName("小明");
user.setAge("18");
user.setSex("男");
new Adaptee().forUser(user);
Adapter adapter = new Adapter(employees);
new Adaptee().forUser(adapter);
}
}
*上面可以看出 forUser(User user)接口本来参数是User类型,但是通过适配器forUser(User user)也可以接受Employees对象
-------------------------------------------------------------------------本文内容参考蚂蚁课堂精讲设计模式系列