进行描述笔记本类,实现笔记本使用USB鼠标、USB键盘
- USB接口,包含开启功能、关闭功能。
- 笔记本类,包含运行功能、关机功能、使用USB设备功能。
- 鼠标类,要实现USB接口,并具备点击的方法。
- 键盘类,要实现USB接口,具备敲击的方法。
案例实现
笔记本类
package cn.luis.laptop;
public class Lapton {
public void powerOn(){
System.out.println("笔记本开机啦!");
}
public void useDevice(Usb usb){
usb.open();
if(usb instanceof Mouse){
Mouse mouse = (Mouse) usb;
mouse.click();
} else if(usb instanceof Keyboard){
Keyboard keyboard = (Keyboard) usb;
keyboard.type();
}
usb.close();
}
public void powerOff(){
System.out.println("笔记本关机啦!");
}
}
USB接口
package cn.luis.laptop;
public interface Usb {
void open();
void close();
}
鼠标
package cn.luis.laptop;
public class Mouse implements Usb {
@Override
public void open() {
System.out.println("鼠标已插入!");
}
@Override
public void close() {
System.out.println("鼠标已拔出!");
}
public void click(){
System.out.println("点击鼠标!");
}
}
键盘
package cn.luis.laptop;
public class Keyboard implements Usb {
@Override
public void open() {
System.out.println("键盘已插入!");
}
@Override
public void close() {
System.out.println("键盘已拔出!");
}
public void type(){
System.out.println("敲击键盘!");
}
}
测试类
public class Work{
public static void main(String[] args) {
Lapton lapton = new Lapton();
lapton.powerOn();
lapton.useDevice(new Mouse());
lapton.useDevice(new Keyboard());
lapton.powerOff();
}
}
结果
笔记本开机啦!
鼠标已插入!
点击鼠标!
鼠标已拔出!
键盘已插入!
敲击键盘!
键盘已拔出!
笔记本关机啦!