A.一個應用程序使用了大量的對象 B.完全由于使用大量的對象,造成很大的存儲開銷 C.對象的大多數(shù)狀態(tài)都可變?yōu)橥獠繝顟B(tài) D.你想使用一個已經(jīng)存在的類,而它的接口不符合你的需求
A.在不影響其他對象的情況下,以動態(tài)、透明的方式給單個對象添加職責 B.處理那些可以撤消的職責 C.客戶程序與抽象類的實現(xiàn)部分之間存在著很大的依賴性 D.當不能采用生成子類的方法進行擴充時。一種情況是,可能有大量獨立的擴展,為支持每一種組合將產(chǎn)生大量的子類,使得子類數(shù)目呈爆炸性增長。另一種情況可能是因為類定義被隱藏,或類定義不能用于生成子類
A.你想使用一個已經(jīng)存在的類,而它的接口不符合你的需求 B.你想表示對象的部分-整體層次結構 C.當一個類的實例只能有幾個不同狀態(tài)組合中的一種時 D.一個對象的行為取決于它的狀態(tài),并且它必須在運行時刻根據(jù)狀態(tài)改變它的行為