//Computer类:
/*
* 计算机类,计算机有一个USB插槽
*/
public class Computer {
private Usb usb; //表示电脑上的USB插槽
//模拟把USB设备连接到电脑上
public void setUsb(Usb usbDevice) {
usb=usbDevice;
}
//模拟电脑上的USB设备的工作情况
public void usbDeviceWork(){
if(usb==null){
System.out.println("还没有插入USB设备");
return;
}
usb.work();
}
}
//Usb类:
/*
* USB接口,USB是一个协议
*/
public interface Usb {
void work(); //USB设备工作
}
//Keyboat类:
/*
* USB接口的键盘
*/
public class Keyboat implements Usb {
@Override
public void work() {
System.out.println("USB接口键盘开始工作");
}
}
//Mouse类:
/*
* USB接口的鼠标
*/
public class Mouse implements Usb {
@Override
public void work() {
System.out.println("USB鼠标开始工作");
}
}
测试Demo类:
public class Demo {
public static void main(String[] args) {
//先有一台电脑
Computer lenovo=new Computer();
//需要一个键盘
Keyboat keyboat=new Keyboat();
//把键盘插入到电脑上
lenovo.setUsb(keyboat);
//键盘就可以工作了
lenovo.usbDeviceWork();
//再连接一个鼠标
Mouse mouse=new Mouse();
lenovo.setUsb(mouse);
lenovo.usbDeviceWork();
}
}