Example #1
0
        static void OverrideVsNew()
        {
            Person p1 = new Employee
            {
                Company = "Rubius",
                Name    = "Саша"
            };

            p1.Display();

            var p2 = new CivilServant()
            {
                Office = "Department",
                Name   = "Елена"
            };

            p2.Display();

            //IHuman human = new CivilServant()
            //{
            //    Name = "Виктор"
            //};

            //human.Move();
        }
Example #2
0
        static void Persons()
        {
            var p1 = new Employee()
            {
                Company = "Rubius",
                Name    = "Саша"
            };

            p1.Display();


            var p2 = new CivilServant()
            {
                Office = "Department",
                Name   = "Елена"
            };

            p2.Display();

            var persons = new List <Person>
            {
                p1, // вызовется виртуальный метод
                p2  // вызовется метод базового класса
            };

            foreach (var p in persons)
            {
                p.Display();
            }
        }