public class Demo {
public static void main(String[] args) {
//1买一部电脑
Computer c = new Computer();
//2买一个鼠标
Mouse mouse = new Mouse("小米鼠标");
c.installUSB(mouse);
//买一个键盘
KeyBoard sfy = new KeyBoard("双飞燕");
c.installUSB(sfy);
}
}
interface USB{
void connect(); //接入
void unconnect(); //拔出
}
class Computer{
//提供一个安装USB设备的入口
public void installUSB(USB usb){
usb.connect();
//usb可能是鼠标,也可能是键盘
if (usb instanceof Mouse){
Mouse m = (Mouse) usb;
m.dbMouse();
}
if (usb instanceof KeyBoard ){
KeyBoard k = (KeyBoard) usb;
k.KeyDown();
}
usb.unconnect();
}
}
class KeyBoard implements USB{
private String name;
public KeyBoard(String name){
this.name = name;
}
//按键
public void KeyDown(){
System.out.println(name+"来了,老弟");
}
@Override
public void connect() {
System.out.println(name+"键盘成功接入设备");
}
@Override
public void unconnect() {
System.out.println(name+"键盘成功拔出设备");
}
}
//定义2个USB设备,鼠标键盘
class Mouse implements USB{
private String name;
public Mouse(String name){
this.name = name;
}
public void dbMouse(){
System.out.println("双击6666");
}
@Override
public void connect() {
System.out.println(name+"鼠标成功接入");
}
@Override
public void unconnect() {
System.out.println(name+"鼠标成功拔出");
}