\quad
裝飾器模式是gof23種設計模式中較為常用的一種模式。它可以實現對原有類的包裝和裝飾,使新的類具有更強的功能。
\quad
我這裡有飲料咖啡, 我們可以通過加入牛奶或蔗糖,實現原有飲料口味的擴充套件和**的變化。這就是一種「裝飾器模式」。 我們在未來給普通人加裝「外骨骼」裝飾,讓普通人具有力扛千斤的能力,也是一種「裝飾器模式」。
裝飾器模式演示
/**
* 模擬咖啡
* 1、抽象元件:需要裝飾的抽象物件(介面或抽象父類)
* 2、具體元件:需要裝飾的物件
* 3、抽象裝飾類:包含了對抽象元件的引用以及裝飾者共有的方法
* 4、具體裝飾類:裝飾的物件
* @author 影隨風
*/public
class
decoratetest02
}//抽象元件
inte***ce
drink
//具體元件
class
coffee
implements
drink
@override
public string info()
}//抽象裝飾類
abstract
class
decorate
implements
drink
@override
public
double
cost()
@override
public string info()
}//具體裝飾類
class
milk
extends
decorate
@override
public
double
cost()
@override
public string info()
}class
suger
extends
decorate
@override
public
double
cost()
@override
public string info()
}
執行結果
在io流中,bufferedinputstream就是對inputstream的乙個裝飾類,它的緩衝流使得io效率更高。
public
class
copytxt
public
static
void
copy
(string _src, string _des)
}catch
(ioexception e)
}}
工廠模式 簡單工廠模式 初涉
定義 稱為靜態工廠方法 static factory method 模式,它屬於類建立型模式。在簡單工廠模式中,可以根據引數的不同返回不同類的例項 優勢物件的建立和物件的使用實現了分離,客服端不需要了解實現細節,降低耦合度 當你需要什麼,只需要傳入乙個正確的引數,就可以獲取你所需要的物件,而無須知道...
初涉設計模式 簡單工廠模式
下面我談談簡單工廠模式 有的時候,我們不希望客戶自己new以個產品,而是希望客戶傳入乙個產品的名字來得到他們想要的產品,下面用乙個示意程式來說明 inte ce car class benz implements car public void stop class ford implements ...
初涉c 設計模式 Factory Pattern
工廠模式,設計模式中普遍分成了三種,簡單工廠 工廠方法和抽象工廠模式。看到乙個名字,我首先會去思考它為什麼被人們起為這樣的名字,對於設計模式,想要明白到底是怎麼回事,當然也要從名字開始。簡單工廠,是針對同樣具有某種屬性和動作的物件進行抽象和封裝的開始,簡單工廠當然就是量少的工廠,我們完全可以專案的生...