This article describes the C# decorator pattern. Share it for your reference. The specific methods are as follows:
using System; using ; using ; using ; namespace Decorators { class Program { static void Main(string[] args) { ConcreteComponent con = new ConcreteComponent(); ConcreteDecoratorA a = new ConcreteDecoratorA(); (con); (); (); ("============================"); ConcreteDecoratorB B = new ConcreteDecoratorB(); (a); (); (); (); } public abstract class Component { public abstract void Operation(); } abstract class Decorator : Component { private Component component; public void SetComponent(Component component) { = component; } public override void Operation() { if (component != null) { (); } } } class ConcreteDecoratorA : Decorator { public override void Operation() { (); } public void AddBehavior() { ("Decorate Class A operations!"); } } class ConcreteDecoratorB : Decorator { public override void Operation() { (); } public void AddBehavior() { ("Decorate Class B operation!"); } } public class ConcreteComponent : Component { public override void Operation() { ("Operation of specific objects!"); } } } }
I hope this article will be helpful to everyone's C# programming.