C# 抽象类的调用机制

using System;
using System.Collections.Generic;
using System.Text;

namespace Test
{
    abstract class Base
    {
        private string a = "base a";
        public void ShowA()
        {
            Console.WriteLine("{0}", a);
        }
        public abstract void Show();
    }
    class SubClass : Base
    {
        private string b = "sub b";
        private string C = "sub C";
        public void ShowB()
        {
            Console.WriteLine("{0}", b);
        }
            
        public override void Show()
        {
            Console.WriteLine("{0}", C);
        }
    }

    
    class Program
    {
        static void Main(string[] args)
        {

           Base obj1 = new SubClass();
            obj1.ShowA();

            SubClass obj = new SubClass();
            obj.ShowA();
            obj.Show();
            Console.ReadLine();
           
        }
    }

}
//抽象类可以包含非抽象成员,抽象类不可以被实例化。
//抽象类可以包含非抽象成员,抽象类不可以被实例化
//即使有非抽象成员,则必须通过调用子类的实例来实现。




猜你喜欢

转载自blog.csdn.net/CQL_K21/article/details/87566699
今日推荐