筆記本電腦
筆記本電腦( laptop)通常具備使用USB設備的功能。在生產時,筆記本都預留了可以插入USB設備的USB接口,
但具體是什麼USB設備,筆記本廠商並不關心,只要符合USB規格的設備都可以。
定義USB接口,具備最基本的開啓功能和關閉功能。鼠標和鍵盤要想能在電腦上使用,那麼鼠標和鍵盤也必須遵守
USB規範,實現USB接口,否則鼠標和鍵盤的生產出來也無法使用。
案例分析
進行描述筆記本類,實現筆記本使用USB鼠標、USB鍵盤
- USB 接口,包含開啓設備功能、關閉設備功能
- 筆記本類,包含運行功能、關機功能、使用 USB設備功能
- 鼠標類,要實現 USB接口,並具備點擊的方法
- 鍵盤類,要實現 USB接口,具備敲擊的方法
電腦類:
public class computer {
//筆記本開機方法
public void powerOn(){
System.out.println("筆記本電腦開機");
}
//筆記本關機方法
public void powerOff(){
System.out.println("筆記本電腦關機");
}
//使用設備,使用接口作爲方法的闡述
public void useDevice(USB usb){
usb.openDevice();//打開設備,會調用對應對象實現的接口方法
if(usb instanceof Mouse){
Mouse mouse = (Mouse)usb;//向下轉型
mouse.click();//點擊鼠標
}else if(usb instanceof Keyboard){
Keyboard keyboard = (Keyboard)usb;//向下轉型
keyboard.type();//敲擊鍵盤
}
usb.closeDevice();//關閉設備
}
}
接口類:
public interface USB {
public abstract void openDevice();//打開設備方法
public abstract void closeDevice();//關閉設備方法
}
鼠標類:
//鍵盤就是一種USB設備
public class Mouse implements USB {
@Override
public void openDevice() {
System.out.println("打開鼠標");
}
@Override
public void closeDevice() {
System.out.println("關閉鼠標");
}
public void click(){
System.out.println("鼠標點擊");
}
}
鍵盤類:
public class Keyboard implements USB {
@Override
public void openDevice() {
System.out.println("打開鍵盤");
}
@Override
public void closeDevice() {
System.out.println("關閉鍵盤");
}
public void type(){
System.out.println("敲擊鍵盤");
}
}
運行結果: