进行描述笔记本类,实现笔记本使用USB鼠标、USB键盘
USB接口,包含开启功能、关闭功能
笔记本类,包含运行功能、关机功能、使用USB设备功能
鼠标类,要实现USB接口,并具备点击的方法
键盘类,要实现USB接口,具备敲击的方法
package laptop;
public interface Usb {
public abstract void open();//开启
public abstract void close();//关闭
}
package laptop;
public class Mouse implements Usb{
@Override
public void open() {
System.out.println("鼠标插上了Usb");
}
@Override
public void close() {
System.out.println("鼠标拔出了Usb");
}
public void click(){
System.out.println("鼠标点击");
}
}
package laptop;
public class Keybord implements Usb{
@Override
public void open() {
System.out.println("键盘插上了Usb");
}
@Override
public void close() {
System.out.println("键盘拔出了Usb");
}
public void use_keybord_method(){
System.out.println("键盘敲击");
}
}
package laptop;
import javax.swing.plaf.multi.MultiPanelUI;
public class Laptop {
public void run(){
System.out.println("笔记本运行");
}
public void useUsb(Usb usb){//传递 Usb类型
if(usb != null){
usb.open();
if(usb instanceof Mouse){
Mouse m=(Mouse)usb;
m.click();
}else if(usb instanceof Keybord)
{
Keybord k=(Keybord)usb;
k.use_keybord_method();
}
usb.close();
}
}
}
package laptop;
public class test_laptop {
public static void main(String[] args) {
Laptop a=new Laptop();
Mouse m=new Mouse();
a.useUsb(m);
Keybord k=new Keybord();
a.useUsb(k);
}
}