C#虚方法

如果说在一个类中已经使用了一个方法而且已经实现,而我想在它的子类中也想使用这个方法,而且也想实现

就像下面这种样子--但是现在还不能用

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            b b1 = new b();

            b1.a1();
        }
    }
    class a
    {
        public  void a1()
        {
            Console.Write("1");
        }
    }
    class b : a
    {
        public void a1()
        {
            Console.Write("2");
        }
    }
}

  

改成这样

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            b b1 = new b();

            b1.a1();
        }
    }
    class a
    {
        public virtual void a1()//加入virtual修饰
        {
            Console.Write("1");
        }
    }
    class b : a
    {
        public override void a1()//这个加入override就好
        {
            Console.Write("2");
        }
    }
}