手機操作問題
現在對不同的手機型別的不同品牌實現操作程式設計(比如:開機、上網、打**)
新建品牌介面
public
inte***ce
brand
實現類 小公尺手機
public
class
xiaomi
implements
brand
@override
public
void
close()
@override
public
void
call()
}
實現類 vivo手機
public
class
vivo
implements
brand
@override
public
void
close()
@override
public
void
call()
}
新建手機抽象類
public
abstract
class
phone
protected
void
open()
protected
void
close()
protected
void
call()
}
新建折疊式手機類
public
class
foldedphone
extends
phone
public
void
open()
public
void
close()
public
void
call()
}
測試
當我們新增品牌 或者手機型別當時候 只需要增加乙個類 就好
增加直立式手機
public
class
uprightphone
extends
phone
public
void
open()
public
void
close()
public
void
call()
}
測試
github demo位址 : ~~~傳送門~~~
深入理解23種設計模式 23 責任鏈模式
責任鏈模式 chain of responsibility pattern 為請求者建立乙個接受者物件的鏈,這種模式對請求對傳送者和請求者進行解耦。責任鏈模式通常每個接收者都包含對另乙個接收者都引用,如果乙個物件不能處理該請求,那麼他就會把相同的請求傳給下乙個接收者解耦,以此類推。這種型別的設計模式...
深入理解23種設計模式 9 外觀模式
外觀模式 facade pattern 門面模式,隱藏系統的複雜性,並向客戶端提供了乙個客戶端可以訪問系統的介面,這種型別的設計模式屬於結構型模式,他向現有的系統新增乙個介面,來隱藏系統的複雜性,這種模式涉及到乙個單一的類,該類提供類乙個客戶端請求的簡化方法和對現有系統類方法對委託呼叫 傳送郵件 p...
深入理解23種設計模式 13 命令模式
命令模式 command pattern 在軟體設計中,我們經常需要向某些物件傳送請求,但是並布置的請求的接收者是誰,也不知道被請求的操作是哪個,我們只需要程式執行時指定具體的請求接受者即可,此時,可以使用命令模式來進行設計 命令模式使得請求傳送者與請求接收者消標題 除彼此間的耦合,讓物件之間呼叫關...