A.將抽象部分與它的實現(xiàn)部分分離,使它們都可以獨立地變化 B.將一個復(fù)雜對象的構(gòu)建與它的表示分離 C.定義一系列的算法,把它們一個個封裝起來,并且使它們可相互替換
A.使多個對象都有機會處理請求,避免請求的發(fā)送者和接收者之間的耦合關(guān)系 B.順序訪問一個聚合對象中各個元素,而又不需暴露該對象的內(nèi)部表示 C.允許一個對象在其內(nèi)部狀態(tài)改變時改變它的行為??雌饋硭坪跣薷牧怂念?br /> D.捕獲一個對象的內(nèi)部狀態(tài),并在該對象之外保存這個狀態(tài)
A.將抽象部分與它的實現(xiàn)部分分離,使它們都可以獨立地變化 B.定義對象間的一種一對多的依賴關(guān)系,當一個對象的狀態(tài)發(fā)生改變時,所有依賴于它的對象都得到通知并被自動更新 C.用原型實例指定創(chuàng)建對象的種類,并且通過拷貝這些原型創(chuàng)建新的對象 D.使多個對象都有機會處理請求,避免請求的發(fā)送者和接收者之間的耦合關(guān)系