第三章 笔记本电脑案例
3.1?案例介紹
定義USB接口(具備開啟功能、關閉功能),筆記本要使用USB設備,即筆記本在生產時需要預留可以插入USB設備的USB接口,即就是筆記本具備使用USB設備的功能,但具體是什么USB設備,筆記本并不關心,只要符合USB規格的設備都可以。鼠標和鍵盤要想能在電腦上使用,那么鼠標和鍵盤也必須遵守USB規范,不然鼠標和鍵盤的生產出來無法使用
進行描述筆記本類,實現筆記本使用USB鼠標、USB鍵盤
- USB接口,包含開啟功能、關閉功能
- 筆記本類,包含運行功能、關機功能、使用USB設備功能
- 鼠標類,要符合USB接口
- 鍵盤類,要符合USB接口
3.2?案例需求分析
階段一:
使用筆記本,筆記本有運行功能,需要筆記本對象來運行這個功能
階段二:
想使用一個鼠標,又有一個功能使用鼠標,并多了一個鼠標對象。
階段三:
還想使用一個鍵盤 ,又要多一個功能和一個對象
問題:每多一個功能就需要在筆記本對象中定義一個方法,不爽,程序擴展性極差。
降低鼠標、鍵盤等外圍設備和筆記本電腦的耦合性。
3.3?實現代碼步驟
- 定義鼠標、鍵盤,筆記本三者之間應該遵守的規則
interface?USB {
void?open();// 開啟功能
?
void?close();// 關閉功能
}
?
- 鼠標實現USB規則
class?Mouse implements?USB {
public?void?open() {
System.out.println("鼠標開啟");
}
?
public?void?close() {
System.out.println("鼠標關閉");
}
}
?
- 鍵盤實現USB規則
class?KeyBoard implements?USB {
public?void?open() {
System.out.println("鍵盤開啟");
}
?
public?void?close() {
System.out.println("鍵盤關閉");
}
}
?
- 定義筆記本
class?NoteBook {
// 筆記本開啟運行功能
public?void?run() {
System.out.println("筆記本運行");
}
?
// 筆記本使用usb設備,這時當筆記本對象調用這個功能時,必須給其傳遞一個符合USB規則的USB設備
public?void?useUSB(USB usb) {
// 判斷是否有USB設備
if?(usb?!= null) {
usb.open();
usb.close();
}
}
?
public?void?shutDown() {
System.out.println("筆記本關閉");
}
}
?
public?class?Test {
public?static?void?main(String[] args) {
// 創建筆記本實體對象
NoteBook nb?= new?NoteBook();
// 筆記本開啟
nb.run();
?
// 創建鼠標實體對象
Mouse m?= new?Mouse();
// 筆記本使用鼠標
nb.useUSB(m);
?
// 創建鍵盤實體對象
KeyBoard kb?= new?KeyBoard();
// 筆記本使用鍵盤
nb.useUSB(kb);
?
// 筆記本關閉
nb.shutDown();
}
}
?
轉載于:https://www.cnblogs.com/Colaandcookie/p/9563264.html
總結
以上是生活随笔為你收集整理的第三章 笔记本电脑案例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决ubuntu命令行中文显示为问号的问
- 下一篇: Python中的id()函数_怪异现象