A.當一個類不知道它所必須創(chuàng)建的對象的類的時候 B.當一個類希望由它的子類來指定它所創(chuàng)建的對象的時候 C.當你提供一個產(chǎn)品類庫,而只想顯示它們的接口而不是實現(xiàn)時 D.當類將創(chuàng)建對象的職責委托給多個幫助子類中的某一個,并且你希望將哪一個幫助子類是代理者這一信息局部化的時候
A.一個系統(tǒng)要獨立于它的產(chǎn)品的創(chuàng)建、組合和表示時 B.一個系統(tǒng)要由多個產(chǎn)品系列中的一個來配置時 C.當你要強調(diào)一系列相關的產(chǎn)品對象的設計以便進行聯(lián)合使用時 D.當一個類希望由它的子類來指定它所創(chuàng)建的對象的時候
A.定義對象間的一種一對多的依賴關系,當一個對象的狀態(tài)發(fā)生改變時,所有依賴于它的對象都得到通知并被自動更新 B.表示一個作用于某對象結構中的各元素的操作 C.在不破壞封裝性的前提下,捕獲一個對象的內(nèi)部狀態(tài),并在該對象之外保存這個狀態(tài)。這樣以后就可將該對象恢復到原先保存的狀態(tài) D.用原型實例指定創(chuàng)建對象的種類,并且通過拷貝這些原型創(chuàng)建新的對象