You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.4 KiB
59 lines
1.4 KiB
package com.example.shape;
|
|
|
|
interface USB {
|
|
void open();
|
|
void close();
|
|
}
|
|
|
|
class Mouse implements USB {
|
|
@Override
|
|
public void open() {
|
|
System.out.println("鼠标已连接,指示灯亮起");
|
|
}
|
|
@Override
|
|
public void close() {
|
|
System.out.println("鼠标已断开,指示灯熄灭");
|
|
}
|
|
public void click() {
|
|
System.out.println("鼠标点击了一下");
|
|
}
|
|
}
|
|
|
|
class Keyboard implements USB {
|
|
@Override
|
|
public void open() {
|
|
System.out.println("键盘已连接,可正常输入");
|
|
}
|
|
@Override
|
|
public void close() {
|
|
System.out.println("键盘已断开,无法输入");
|
|
}
|
|
public void type() {
|
|
System.out.println("键盘按下了按键");
|
|
}
|
|
}
|
|
|
|
class Computer {
|
|
public void useUSB(USB usb) {
|
|
usb.open();
|
|
if (usb instanceof Mouse) {
|
|
((Mouse) usb).click();
|
|
} else if (usb instanceof Keyboard) {
|
|
((Keyboard) usb).type();
|
|
}
|
|
usb.close();
|
|
System.out.println("------------------------");
|
|
}
|
|
}
|
|
|
|
public class USBTest {
|
|
public static void main(String[] args) {
|
|
Computer computer = new Computer();
|
|
USB mouse = new Mouse();
|
|
USB keyboard = new Keyboard();
|
|
System.out.println("=== 插入鼠标 ===");
|
|
computer.useUSB(mouse);
|
|
System.out.println("=== 插入键盘 ===");
|
|
computer.useUSB(keyboard);
|
|
}
|
|
}
|