示例#1
0
        static void Main()
        {
            AbstractFactory   factory = new FirstFactory();
            FirstSecondParent Object  = factory.CreateObject();

            System.Console.WriteLine(Object.Message);

            factory = new SecondFactory();
            Object  = factory.CreateObject();
            System.Console.WriteLine(Object.Message);
        }
示例#2
0
        private static void AbstractFactoryTest()
        {
            Console.WriteLine("---------------------------");
            Console.WriteLine("AbstractFactory");
            var firstFactory = new FirstFactory();

            Console.WriteLine(firstFactory.GetAObject());
            Console.WriteLine(firstFactory.GetBObject());

            var secondFactory = new SecondFactory();

            Console.WriteLine(secondFactory.GetAObject());
            Console.WriteLine(secondFactory.GetBObject());
            Console.WriteLine("---------------------------");
        }
示例#3
0
        private static void Test()
        {
            _firstFactory  = new FirstFactory((string Text) => Console.WriteLine(Text));
            _secondFactory = new SecondFactory((string Text) => Console.WriteLine(Text));

            IProductA firstProductA  = _firstFactory.CreateA();
            IProductA secondProductA = _secondFactory.CreateA();

            IProductB firstProductB  = _firstFactory.CreateB();
            IProductB secondProductB = _secondFactory.CreateB();

            firstProductA.OperationA();
            firstProductB.OperationB();
            secondProductA.OperationA();
            secondProductB.OperationB();
        }