.net core 3.1 23种设计模式----装饰器模式(结构性设计模式)
定义
装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构
套路:建立第三方类
代码实现
场景:吃晚饭之前先洗手 ,晚饭后散步
public class Person
{
/// <summary>
/// 吃晚饭
/// </summary>
protected void dinner()
{
Console.WriteLine("吃完饭");
}
}
public class WashHands: Person
{
/// <summary>
/// 洗手
/// </summary>
public void WashHand()
{
Console.WriteLine("吃晚饭之前先洗手");
base.dinner();
}
}
public class TakeWalk
{
private WashHands wash=new WashHands();
/// <summary>
/// 散步
/// </summary>
public void Walk()
{
wash.WashHand();
Console.WriteLine("吃完晚饭再散步");
}
}
TakeWalk takeWalk = new TakeWalk();
takeWalk.Walk();