Пример #1
0
        static void Main(string[] args)


        {
            Base test = new Base();

            test.First();
            Console.WriteLine("-=-=-");

            Derived test2 = new Derived();

            test2.First();
            Console.WriteLine("-=-=-");

            Base derivedAsBase = new Derived();

            derivedAsBase.BBB();

            derivedAsBase.First();  // Derived.First(), выведет "First from Derived"
            //override - тут переопределили метод базового класса
            derivedAsBase.Second(); // Base.Second(), выведет "Second from Base"
            //new - тут создали новый экземпляр базового класса?
            Console.ReadLine();
        }