设计模式- 桥接模式

2016-08-28  本文已影响73人  Mitchell
abstract class Implementor
{
    public abstract void Operation();
}
class ConcreteImplentorA:Implementor
{
    public override void Operation()
    {
        Console.WriteLine("A 方法执行");
    }
}
class ConcreteImplentorB:Implementor
{

    public override void Operation()
    {
        Console.WriteLine("B 方法执行");
    }
}
class Abstraction
{
    protected Implementor implementor;
    public void SetImplementor(Implementor implementor)
    {
        this.implementor = implementor;
    }
    public virtual void Operation()
    {
        implementor.Operation();
    }
}
class RefinedAbstraction:Abstraction
{
    public override void Operation()
    {
        implementor.Operation();
    }
}
//客户端实现
static void Main(string[] args){
    Abstraction ab = new Abstraction();
    ab.Operation();
    ab.SetImplementor(new ConcreteImplentorA);
    ab.Operation();
    ab.SetImplementor(new ConcreteImplentorB);
    ab.Operation();
}
上一篇 下一篇

猜你喜欢

热点阅读