設計模式之裝飾器模式

2021-10-19 20:31:25 字數 747 閱讀 8359

裝飾器模式:指在不修改原有物件基礎上,增加額外功能屬性,提供了更有彈性的擴充套件功能。看起來雖然很像**模式但兩者層級不同,**模式雖然也是增強但只是對業務本身增強,但裝飾器模式是對類的本身進行乙個增強。例如小明需要租房,**就是中介幫忙處理,你只需要付錢即可,聯絡房東獲取價效比最高的**都由**負責。而裝飾者則更偏重物件本身的增強,相當於小明自己新增了乙個尋找**和聯絡房東的增強屬性。屬於結構性設計模式

public

abstract

class

battercake

public

class

basebattercake

extends

battercake

public

basebattercake()

public string getmsg()

public

intgetprice()

}

public

class

eggbattercake

extends

battercake

public string getmsg()

public

intgetprice()

}

public

class

test

}

設計模式之裝飾器模式

定義 decorator裝飾器,顧名思義,就是動態地給乙個物件新增一些額外的職責,就好比為房子進行裝修一樣。因此,裝飾器模式具有如下的特徵 它必須具有乙個裝飾的物件。它必須擁有與被裝飾物件相同的介面。它可以給被裝飾物件新增額外的功能。用一句話總結就是 保持介面,增強效能。裝飾器通過包裝乙個裝飾物件來...

設計模式之裝飾器模式

什麼是裝飾器模式 decorator 裝飾器模式的優點 裝飾器模式的缺點 示例 package com.pattern.decorator 抽象類,裝飾器的父類 author yjzhou public abstract class decorator implements component ov...

設計模式之裝飾器模式

裝飾模式 decorator 顧名思義,裝飾模式就是給乙個物件增加一些新的功能,而且是動態的,要求裝飾物件和被裝飾物件實現同乙個介面,裝飾物件持有被裝飾物件的例項,關係圖如下 source類是被裝飾類,decorator類是乙個裝飾類,可以為source類動態的新增一些功能,如下 1.public ...