结构型/装饰器模式/DecoratorService.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
namespace DesignModeConsole.结构型.装饰器模式;
/// <summary>
/// 装饰器服务
/// </summary>
public class DecoratorService : IService
{
public void Main()
{
//日志记录的示例
Log log = new DataBaseLog();
LogWrapper lew1 = new LogErrorWrapper(log);
//扩展记录错误严重类别
lew1.Write("log message");
Console.WriteLine("-----");
LogWrapper lpw1 = new LogPriorityWrapper(log);
//扩展记录优先级别
lpw1.Write("log message");
Console.WriteLine("----");
LogWrapper lew2 = new LogErrorWrapper(log);
LogWrapper logPriority = new LogPriorityWrapper(lew2);
//同时扩展了错误严重级别和优先级别
logPriority.Write("log message");
//人穿衣服的示例 模拟人穿衣服的方案作为演示的例子
var xc = new Persion("张三");
Console.WriteLine("第一种装扮");
var bigTrouser = new BigTrouser();
var shirts = new TShirts();
bigTrouser.Decorate(xc);
shirts.Decorate(bigTrouser);
shirts.Show();
}
}
/// <summary>
/// 记录日志抽象类
/// </summary>
public abstract class Log
{
public abstract void Write(string log);
}
public class DataBaseLog : Log
{
public override void Write(string log)
{
Console.WriteLine("记录日志到数据库");
}
}
public class TextFileLog : Log
{
public override void Write(string log)
后面还有 111 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。