A.你想使用一個已經存在的類,而它的接口不符合你的需求 B.根據需要創(chuàng)建開銷很大的對象 C.在需要用比較通用和復雜的對象指針代替簡單的指針的時候 D.取代了簡單的指針,它在訪問對象時執(zhí)行一些附加操作
A.一個應用程序使用了大量的對象 B.完全由于使用大量的對象,造成很大的存儲開銷 C.對象的大多數(shù)狀態(tài)都可變?yōu)橥獠繝顟B(tài) D.你想使用一個已經存在的類,而它的接口不符合你的需求
A.在不影響其他對象的情況下,以動態(tài)、透明的方式給單個對象添加職責 B.處理那些可以撤消的職責 C.客戶程序與抽象類的實現(xiàn)部分之間存在著很大的依賴性 D.當不能采用生成子類的方法進行擴充時。一種情況是,可能有大量獨立的擴展,為支持每一種組合將產生大量的子類,使得子類數(shù)目呈爆炸性增長。另一種情況可能是因為類定義被隱藏,或類定義不能用于生成子類