static void Main(string[] args) { Abstraction ab = new RefinedAbstraction(); ab.SetImplementor(new ConcreteImplementorA()); ab.Operation(); }
static void Main(string[] args) { Implementor implementor = new ConcreteImplementA(); Abstraction abstraction = new RefinedAbstraction(implementor); abstraction.Operation(); Console.Read(); }
static void Main(string[] args) { Abstraction ab = new RefinedAbstraction(); ab.Implementor = new ConcreateImplementorA(); ab.Operation(); ab.Implementor = new ConcreateImplementorB(); ab.Operation(); Console.ReadKey(); }
static void Main(string[] args) { Abstraction ab = new RefinedAbstraction(); ab.SetImplementor(new ConcreteImplementorA()); ab.Operation(); ab.SetImplementor(new ConcreteImplementorB()); ab.Operation(); Console.Read(); }
static void Main(string[] args) { Abstraction ab = new RefinedAbstraction(); ab.SetImplementor(new ConcreteImplementorA()); ab.Operation(); ab.SetImplementor(new ConcreteImplementorB()); ab.Operation(); Abstraction ab2 = new RefinedAbstraction2(); ab2.SetImplementor(new ConcreteImplementorA()); ab2.Operation(); ab2.SetImplementor(new ConcreteImplementorB()); ab2.Operation(); Console.Read(); }