示例#1
0
        public List <IBaseDuck> CreatList()
        {
            Random           rnd        = new Random();
            List <IBaseDuck> _baseDucks = new List <IBaseDuck>();

            for (int i = 0; i < 6; i++)
            {
                IBaseDuck duck = null;

                if (rnd.Next(0, 10) % 2 == 0)
                {
                    IFly         F = ReturnFly(rnd.Next(0, 2));
                    IQuick       Q = ReturnQuick(rnd.Next(0, 2));
                    IComposition C = ReturnComposition(rnd.Next(0, 3));

                    duck = new Duck(F, Q, C);
                }
                else
                {
                    Turkey turkey;

                    IKudah       K = ReturnKudah(rnd.Next(0, 10) % 2);
                    IFly2        F = ReturnFly2(rnd.Next(0, 10) % 2);
                    IComposition C = ReturnComposition(rnd.Next(0, 3));

                    turkey = new Turkey(F, K, C);

                    duck = new CreateDuck(turkey);
                }

                _baseDucks.Add(duck);
            }

            return(_baseDucks);
        }
示例#2
0
        static void Main(string[] args)
        {
            Turkey turkey = new Turkey(new CanFlyInShortDist(), new CanKudah(), new Meat());
            Duck   duck   = new Duck(new CanFly(), new CanQuick(), new Meat());

            Console.WriteLine("Duck said:");

            duck.Fly();
            duck.Quick();
            duck.Composition();

            Console.WriteLine("Turkey said:");

            turkey.Fly();
            turkey.Kudah();
            duck.Composition();

            IBaseDuck duck1 = new CreateDuck(turkey);

            Console.WriteLine("Duck(Turkey) said:");

            duck1.Fly();
            duck1.Quick();
            duck1.Composition();

            Console.ReadKey();
        }
示例#3
0
        public IBaseDuck[] CreatArray()
        {
            Random rnd = new Random();

            IBaseDuck[] _baseDucks = new IBaseDuck[6];

            for (int i = 0; i < 6; i++)
            {
                IBaseDuck duck = null;

                if (rnd.Next(0, 10) % 2 == 0)
                {
                    IFly         F = ReturnFly(rnd.Next(0, 2));
                    IQuick       Q = ReturnQuick(rnd.Next(0, 2));
                    IComposition C = ReturnComposition(rnd.Next(0, 3));

                    duck = new Duck(F, Q, C);
                }
                else
                {
                    Turkey turkey;

                    IKudah       K = ReturnKudah(rnd.Next(0, 10) % 2);
                    IFly2        F = ReturnFly2(rnd.Next(0, 10) % 2);
                    IComposition C = ReturnComposition(rnd.Next(0, 3));

                    turkey = new Turkey(F, K, C);

                    duck = new CreateDuck(turkey);
                }

                _baseDucks[i] = duck;
            }

            return(_baseDucks);
        }