Analytics

2013年3月29日 星期五

[Design Pattern]Structural Pattern-Decorator Design Pattern(裝飾模式)

使用時機:
使用在擴充,或增加物件的行為時使用,好處是可以不更動現有物件,就可以加入新的行為.

例如:
在現有的物件上,新的物件繼承在現有的物件上並為新物件增加行為
使用方式:
public class Component
{
public string GetComponentName()
{
return "i am ori component";
}
}

public class DecoratorChild : Component
{
public string AddMethod()
{
return "call parent component :"+GetComponentName();
}
}
此時呼叫DecoratorChild的AddMethod()時,會傳回訊息
call parent component :i am ori component

也就是雖然DecoratorChild未有GetComponentName()的行為,但透過繼承後,可以不須變更原本物件,就為原本物件加上新的行為


沒有留言:

熱門文章