package USBDemo;public interface USBinterface {public abstract void open();//打开usb设备public abstract void close();//关闭usb设备}
package USBDemo;public class Computer{public void on() {System.out.println("电脑开机");}public void useUSB(USBinterface usb) {//电脑是使用接口,不是实现接口,看看使用哪个接口里的功能usb.open();if(usb instanceof mouse) {//如果是鼠标,就使用鼠标的点击功能((mouse) usb).click();}else if(usb instanceof plan) {//如果是键盘,就使用键盘的输入功能((plan) usb).type();}usb.close();}public void off() {System.out.println("电脑关机");}}
package USBDemo;public class mouse implements USBinterface{@Overridepublic void open() {// TODO Auto-generated method stubSystem.out.println("打开鼠标");}@Overridepublic void close() {// TODO Auto-generated method stubSystem.out.println("打开键盘");}public void click() {System.out.println("鼠标点击");}}
package USBDemo;public class plan implements USBinterface{@Overridepublic void open() {// TODO Auto-generated method stubSystem.out.println("打开键盘");}@Overridepublic void close() {// TODO Auto-generated method stubSystem.out.println("关闭键盘");}public void type() {System.out.println("键盘输入");}}
package USBDemo;public class test {public static void main(String[] args) {// TODO Auto-generated method stubComputer com=new Computer();com.on();USBinterface mouusb=new mouse();USBinterface planusb=new plan();com.useUSB(planusb);com.useUSB(mouusb);com.off();}}