示例#1
0
        static void Main(string[] args)
        {
            Abstraction ab = new RefinedAbstraction();

            ab.SetImplementor(new ConcreteImplementorA());
            ab.Operation();
        }
示例#2
0
        static void Main(string[] args)
        {
            Implementor implementor = new ConcreteImplementA();
            Abstraction abstraction = new RefinedAbstraction(implementor);

            abstraction.Operation();

            Console.Read();
        }
示例#3
0
        static void Main(string[] args)
        {
            Abstraction ab = new RefinedAbstraction();
            ab.Implementor = new ConcreateImplementorA();
            ab.Operation();

            ab.Implementor = new ConcreateImplementorB();
            ab.Operation();

            Console.ReadKey();
        }
示例#4
0
        static void Main(string[] args)
        {
            Abstraction ab = new RefinedAbstraction();

            ab.SetImplementor(new ConcreteImplementorA());
            ab.Operation();

            ab.SetImplementor(new ConcreteImplementorB());
            ab.Operation();

            Console.Read();
        }
示例#5
0
        static void Main(string[] args)
        {
            Abstraction ab = new RefinedAbstraction();

            ab.Implementor = new ConcreateImplementorA();
            ab.Operation();

            ab.Implementor = new ConcreateImplementorB();
            ab.Operation();

            Console.ReadKey();
        }
示例#6
0
        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();
        }