JAVA設計模式(九)設計模式之裝飾器設計模式

2021-09-24 11:30:07 字數 1332 閱讀 8422

本章講解設計模式中裝飾器設計模式的相關知識

1.概念

與橋接模式類似,該模式也是為了解決類**的問題。但是裝飾器模式關注於功能的擴充套件,真實的角色比較穩定。橋接模式的真實角色在多維度之間不斷的變化,具有不確定性。

2.裝飾器模式的實現思路

1)新建相應工程

其中,car(車)為基本物件,feature介面為car類具有的基本功能,supercar類為裝飾類。

acar,aacar,aaacar為三種不同特性的車。

2)**展示

car:

package decorator;

/** * 真實物件-普通汽車類

* 更高階的車為acar、aacar、aaacar以此類推

* @author jwang

* */

public class car implements feature

}

feature:

package decorator;

public inte***ce feature

supercar:

package decorator;

/** * 裝飾器類,用來擴充基本物件的功能

* @author jwang

* */

public class supercar implements feature

@override

public void move()

}

其中一種特性車acar:

package decorator;

public class acar extends supercar

//a類車新特性

public void a()

@override

public void move()

}

由此可見,a類車可以通過傳遞過來的型別任意的擴充自己的功能。

3)編寫測試**測試

test:

package decorator;

public class test

}

程式執行結果:

Java設計模式(九) 外觀模式

外觀模式 一 定義 二 結構 三 案例 四 特點 一 定義 facade 外觀 模式為子系統中的各類 或結構與方法 提供乙個簡明一致的介面,隱藏子系統的複雜性,使子系統更加容易使用。二 結構 門面 facade 角色 客戶端可以呼叫這個角色的方法。此角色知曉相關的 乙個或者多個 子系統的功能和責任。...

java設計模式之原型設計模式

原型設計模式 顧名思義,該模式的思想就是將乙個物件作為原型,對其進行複製 轉殖,產生乙個和原物件類似的新物件 設計思路 第一步 建立乙個類prototypemode,實現cloneable介面 第二步 在prototypemode中定義shallowclone方法 淺複製物件實現 和deepclon...

java設計模式之裝飾設計模式

裝飾設計模式 裝飾設計模式就是給乙個物件增加一些新的功能,而且是動態的。要求裝飾物件和被裝飾物件實現同乙個介面,裝飾物件持有被裝飾物件的例項 設計思路 第一步 定義介面action,在介面中提供乙個方法work 第二步 定義被裝飾類child,實現介面action 第三步 定義裝飾類adult,實現...