A.你想使用一個(gè)已經(jīng)存在的類,而它的接口不符合你的需求 B.你想創(chuàng)建一個(gè)可以復(fù)用的類,該類可以與其他不相關(guān)的類或不可預(yù)見的類(即那些接口可能不一定兼容的類)協(xié)同工作 C.你想使用一些已經(jīng)存在的子類,但是不可能對每一個(gè)都進(jìn)行子類化以匹配它們的接口。對象適配器可以適配它的父類接口 D.如果刪除對象的外部狀態(tài),那么可以用相對較少的共享對象取代很多組對象
A.當(dāng)一個(gè)類不知道它所必須創(chuàng)建的對象的類的時(shí)候 B.當(dāng)一個(gè)類的實(shí)例只能有幾個(gè)不同狀態(tài)組合中的一種時(shí) C.當(dāng)這個(gè)唯一實(shí)例應(yīng)該是通過子類化可擴(kuò)展的,并且客戶應(yīng)該無需更改代碼就能使用一個(gè)擴(kuò)展的實(shí)例時(shí) D.當(dāng)一個(gè)類希望由它的子類來指定它所創(chuàng)建的對象的時(shí)候
A.當(dāng)要實(shí)例化的類是在運(yùn)行時(shí)刻指定時(shí),例如,通過動(dòng)態(tài)裝載 B.當(dāng)你要強(qiáng)調(diào)一系列相關(guān)的產(chǎn)品對象的設(shè)計(jì)以便進(jìn)行聯(lián)合使用時(shí) C.為了避免創(chuàng)建一個(gè)與產(chǎn)品類層次平行的工廠類層次時(shí) D.當(dāng)一個(gè)類的實(shí)例只能有幾個(gè)不同狀態(tài)組合中的一種時(shí)