现在的位置: 首页 > 综合 > 正文

抽象方法&虛方法

2012年08月29日 ⁄ 综合 ⁄ 共 932字 ⁄ 字号 评论关闭

  虛方法:
  定義含有關鍵字:Virtual,在派生類中可對此方法重寫(override),也可以直接使用;
一般虛方法含有函數體;

  抽象方法:
  虛方法的一個特例,沒有函數體,只有函數定義;抽象方法必須在派生類里重寫,進行代碼實現。

  為了避免命名沖突,可在派生類里對基類方法隱藏(new 關鍵字)

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

namespace inherit_1_
{
    class InheritCls:BasicCls
    {
        static void Main(string[] args)
        {
            InheritCls a = new InheritCls();
            a.BasicMethod();
            a.InheritMethod();
            Console.Read();
        }

        public override void BasicMethod()                  //重寫BasicCls方法
        {
            Console.WriteLine("This is InheritMethod");
        }

        public new void InheritMethod()                     //隱藏了BasicCls 方法
        {
            Console.WriteLine("The new InheritMethod Demo");
        }
    }

    class BasicCls
    {
        public virtual void BasicMethod()
        {
            Console.WriteLine("This is BasicMethod");
        }

        public void InheritMethod()
        {
            Console.WriteLine("This is new BasicMethod");
        }
    }

} 

抱歉!评论已关闭.