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); } }