Example #1
0
        static void Animals()
        {
            //проверяем, что счетчики по нулям
            Console.WriteLine(Cat.Count);
            Console.WriteLine(Animal.Count);

            //создаем кошку. проверяем, что счетчики увеличились
            var cat = new Cat();
            Console.WriteLine(Animal.Count);
            Console.WriteLine(Cat.Count);

            //создаем кошку другим конструктором. проверяем, что счетчики увеличились
            var cat1 = new Cat("Cat", new DateTime(1999, 1, 1));
            Console.WriteLine(Animal.Count);
            Console.WriteLine(Cat.Count);

            //создаем кошку. проверяем, что счетчик животных увеличисся, счетчик кошек не изменился
            var dog = new Dog();
            Console.WriteLine(Animal.Count);
            Console.WriteLine(Cat.Count);

            //гладим кошку, чтобы проверить, что исправление логики генерации случайных чисел сработала
            for (int i = 0; i < 10; i++)
            {
                cat1.Pet();
            }

            //Проверяем, что перегруженный метод возвращает разные значения для разных классов.
            Console.WriteLine(cat.WhatYouSay());
            Console.WriteLine(dog.WhatYouSay());
        }