原创 裝飾模式

 裝飾模式是對對象功能增強時,平時使用繼承的一種替代方案 一.UML示意圖: 二.組成部分: 1.       抽象構件:原始的功能接口 2.       具體構件:具體的原始功能類 3.       裝飾角色:持有具體構件類的對象,以便

原创 Java與設計模式-組合模式

  組合模式(Composite)屬於結構性模式,它描述了對象間的組合關係。 對象間常常通過樹結構來組織(包含)起來,以實現整體-部分的層次結構。整體上可以看做是一個組合對象。 拋卻各種複雜的術語,組合模式的特點是: 對象通過實現(繼承)

原创 FlyWeight享元模式

 一、FlyWeight模式定義: 運用共享技術有效地支持大量細粒度對象。 二、模式解說 也就是說在一個系統中如果有多個相同的對象,那麼只共享一份就可以了,不必每個都去實例化一個對象。在Flyweight模式中,由於要產生各種各樣的對象,所

原创 (Mediator)中介者模式的Java實現(加修改)

 中介者模式(Mediator):用一箇中介對象來封裝一系列的對象交互。中介者使各對象不需要顯式地相互引用,從而使其耦合鬆散,而且可以獨立地改變它們之間的交互。   通用類圖:   舉例:在一個公司裏面,有很多部門、員工(我們統稱他們互相爲

原创 uml 類圖

  1、關聯 雙向關聯: C1-C2:指雙方都知道對方的存在,都可以調用對方的公共屬性和方法。 在GOF的設計模式書上是這樣描述的:雖然在分析階段這種關係是適用的,但我們覺得它對於描述設計模式內的類關係來說顯得太抽象了,因爲在設

原创 java設計模式

 引用《軟件祕笈-設計模式那點事》書籍: 按照目的來分,設計模式可以分爲創建型模式、結構型模式和行爲型模式。 創建型模式用來處理對象的創建過程;結構型模式用來處理類或者對象的組合;行爲型模式用來對類或對象怎樣交互和怎樣分配職責進行描述。 創

原创 命令模式

 命令模式(Command):將一個請求封裝成一個對象,使得你用不同的請求把客戶端參數化,對請求排隊或者記錄請求日誌,可以提供命令的撤銷和恢復功能。   命令模式,顧名思義來理解即可,就是客戶端發佈一個命令(也就是“請求”),而這個命令是已

原创 抽象工廠

    一、 抽象工廠(Abstract Factory)模式 抽象工廠模式是所有形態的工廠模式中最爲抽象和最具一般性的一種形態。 爲了方便引進抽象工廠模式,引進一個新概念:產品族(Product Family)。所謂產品族,是指位於不同產

原创 代理模式

 代理模式是一種非常重要的設計模式,在Java語言中有着廣泛的應用,包括Spring AOP的核心設計思想,都和代理模式有密切關係。   代理模式主要分兩種:一種是靜態代理,一種是動態代理。兩種代理方式的實現有着本質的差異。   代理模式的

原创 java cmd

Runtime.getRuntime().exec("cmd /c del c:\\a.doc");    //Runtime.getRuntime().exec("notepad");   //Runtime.getRuntime(

原创 (Prototype)原型模式的Java實現

 原型模式(Prototype):用原型實例指定創建對象的種類,並且通過拷貝這些原型創建新的對象。 當我們已經擁有某個得來不易的寶貝時,往往我們會很想再“變”一些出來,即這個寶貝的“複製品”,這種方式簡單又理想,誰都想要學會這項本事。不可能

原创 java設計模式-門面模式Facade

    設計模式》一書中對Facade模式的意圖是這樣敘述的: 爲子系統中的一組接口提供一個統一接口。Facade模式定義了一個更高層的接口,使子系統更加容易使用。通過這個模式我們能夠更容易地使用一個複雜的系統,要麼只使用系統的一部分功能

原创 我的友情鏈接

51CTO博客開發

原创 java 23種設計模式中常用的九種

 1 Factory Pattern(工廠模式)   上榜理由:將程序中創建對象的操作,單獨出來處理,大大提高了系統擴展的柔性,接口的抽象化處理給相互依賴的對象創建提供了最好的抽象模式。   2 Facade Pattern   上榜理由:

原创 訪問者模式

 GoF對訪問者模式定義爲:表示一個作用於某對象結構中各元素的操作。它可以使你不修改各元素類的前提下定義作用於這些元素的新操作,也就是動態的增加新的方法。 Visitor模式是一種分離對象數據結構與行爲的方法,通過這種分離,可以爲一個已存在