Adapter

来源:互联网 发布:protobuf.min.js 编辑:程序博客网 时间:2024/06/06 06:34
















/** * PS2接口,圆口 * */public interface PS2Port {public void workWithPS2();}



/** * 对象适配器 * 将PS2接口装换成USB接口 * 所以此类类型是USB接口(implements USBPort) + 成员变量ps2Port * @author   * */public class PS2ToUSB implements USBPort{private PS2Port ps2Port;public PS2ToUSB(PS2Port ps2Port) {this.ps2Port = ps2Port;}@Overridepublic void workWithUSB() {System.out.println("转换的关键在这里,本来是");ps2Port.workWithPS2();System.out.println("经过你的转换,现在是USB工作中");}



/** * USB接口,U口 *  */public interface USBPort {public void workWithUSB();}


/** * 适配器模式 * 测试类 client PS2Port(PS2接口)。 USBPort(USB接口)。 PS2ToUSB(对象适配器),将PS2接口装换成USB接口。 * TestAdapter(测试类),客户端。 * 适配器模式:将一个接口转换成另外一个接口。 *  * @author   *  */public class Test {public static void main(String[] args) {// 1.我现在有一个PS2接口PS2Port ps2Port = new PS2Port() {@Overridepublic void workWithPS2() {System.out.println("PS2工作中");}};// 2.但是我需要的是一个USB接口啊,对我(client)来说,我只认识USB接口// 3.经过PS2ToUSB的转换,PS2接口变成了USB接口USBPort ps2ToUsbPort = new PS2ToUSB(ps2Port);ps2ToUsbPort.workWithUSB();}}






0 0
原创粉丝点击