設計模式 Design Patterns 筆記之一

2021-04-06 19:45:56 字數 1437 閱讀 4855

前言:呵呵,拿了第一頁出來,還沒反應過來,就被兄弟們慘罵一頓,前面實在象目錄,^_^, 不過大家別急嘛,好歹給我點休息時間。 不多說,下面開始記筆記!^_^

設計模式(design patterns)筆記之一:

abstract factory 定義:提供乙個建立一系列相關或相互依賴物件的介面,而無需指定它們具體的類。

提供建立物件的接。

工廠模式是我們最常用的模式,是用來建立物件的,它就相當於建立物件的new。

例如我們有乙個類example,我們要建立example的物件: example example=new example(); 或 example example=new example(引數); 如果建立example時做的事情不是如賦值這樣簡單的事,可能是很長一段**,如果也寫入建構函式中,那明顯的就違背了物件導向的原則. 我們需要將建立例項的責任與使用例項的責任分開, 使得 example example=new example(引數); 就是簡單的責任:使用example這個例項;而建立example的任務就交給了factory工廠模式. 按照傳統方法,我們如果需要繼承example類,生成myexample,就需要定義example為inte***ce,然後,不斷繼承這個inte***ce,生成許多子類,造成以後**維護是如此的困難。 如果,我們開始就採用了工廠模式,也許就沒有這麼多的煩惱了。

我們生成乙個factory,它專門負責生成example的例項。

public class factory }

然後,那麼在你的程式中,如果要例項化myexample時.就使用 example example=factory.getintance();//還有其它標誌,不具體寫了。

具體使用:工廠模式有以下三種:

1. 簡單工廠(****** factory)

2. 工廠方法(factory method);

3. 抽象工廠(abstract factory)。

我們先看一段**

public abstract class factory

public class firstfactory extends factory

public yourexample creator() }

public class secondfactory extends factory

public yourexample creator()

}這裡,我們需要建立多個物件,複雜性提高,於是需要採用abstract factory來封裝共同屬性和方法,而將不同的屬性和方法通過子類來實現。 簡而言之,工廠模式的目的就是用來實現例項分發。 工廠模式中幾種型別的一些差別:簡單工廠模式是根據引數來決定產生例項;簡單工廠模式, 核心是乙個實類;工廠方法模式的核心是乙個抽象工廠類;工廠方法模式可以允許很多實的工廠類從抽象工廠類繼承下來, 從而可以在實際上成為多個簡單工廠模式的綜合;工廠方法一般只建立乙個例項,而abstract factory建立多個例項。

設計模式 設計模式

物件導向程式設計 oop 的基本概念有 封裝,抽象,繼承,多型等,如何開發出可復用的物件導向軟體一直困擾著軟體開發人員。可復用的物件導向技術包括類的繼承,物件的組合和引數化型別 generic gof的巨著 設計模式 總結出可復用的物件導向的23個設計模式,並且歸類成 建立型模式,結構型模式和行為型...

設計模式 命令設計模式

一句話總結 命令設計模式的實質是將命令定義,命令的執行分離開,從而提公升了系統的解藕性 結構 命令的抽象command 命令的具體實現concretecommand 命令處理者抽象ireceiver 命令處理者的具體實現concretereceiver 命令的呼叫者invoker 客戶端client...

設計模式 9 設計模式

文章 head first 第一章 head first 設計模式讀書筆記 1 策略模式 觀察者模式 head first設計模式學習2 裝飾者模式 head first 設計模式3 工廠模式 head first設計模式4 命令模式 head first 設計模式5 介面卡模式和外觀模式 head...