package com.bjpowernode.adapter;
/**
* PS2接口,圆口
* @author eason
*
*/
public interface PS2Port {
public void workWithPS2();
}
package com.bjpowernode.adapter;
/**
* USB接口,U口
* @author eason
*
*/
public interface USBPort {
public void workWithUSB();
}
package com.bjpowernode.adapter;
/**
* 对象适配器
* 将PS2接口装换成USB接口
* 所以此类类型是USB接口(implements USBPort) + 成员变量ps2Port
* @author eason
*
*/
public class PS2ToUSB implements USBPort{
private PS2Port ps2Port;
public PS2ToUSB(PS2Port ps2Port) {
this.ps2Port = ps2Port;
}
@Override
public void workWithUSB() {
System.out.println("转换的关键在这里,本来是");
ps2Port.workWithPS2();
System.out.println("经过你的转换,现在是USB工作中");
}
}
package com.bjpowernode.adapter;
/**
* 测试类
* client
* @author eason
*
*/
public class TestAdapter {
public static void main(String[] args) {
//我现在有一个PS2接口
PS2Port ps2Port = new PS2Port() {
@Override
public void workWithPS2() {
System.out.println("PS2工作中");
}
};
//但是我需要的是一个USB接口啊,对我(client)来说,我只认识USB接口
//经过PS2ToUSB的转换,PS2接口变成了USB接口
USBPort ps2ToUsbPort = new PS2ToUSB(ps2Port);
ps2ToUsbPort.workWithUSB();
}
}
package com.bjpowernode.adapter;
/**
* 类适配器
* @author eason
*
*/
public class PS2ToUSB implements USBPort, PS2Port{
//重写workWithUSB,把工作交给workWithPS2
@Override
public void workWithUSB() {
workWithPS2();
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有