文章出處

  • 抽象類使用abstract修飾符聲明;
  • 不能創建抽象類的實例;
  • 抽象類只能用作其他類的基類;
  • 抽象類中可以包含抽象成員普通的非抽象成員;
  • 抽象類自己可以派生自另外一個抽象類;
  • 任何派生自抽象類的【類】,必須使用override關鍵字,實現該抽像類所有的抽像成員,除非派生類自己也是抽象類。
 
示例:
1.基類
 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace 抽象類
{
   public abstract class BaseClass
    {
       public void BaseMethod()
       {
           Console.WriteLine("我是抽象類中的非抽象方法");
 
       }
       public abstract void DrivedMethod();
    }
}
 
 
2.子類
 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace 抽象類
{
   public class DrivedClass:BaseClass
    {
       public override void DrivedMethod()
       {
           Console.WriteLine("我是子類【派生類】中的重寫方法");
           //throw new NotImplementedException();
       }
    }
}
 
3.程序調用:
 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace 抽象類
{
    class Program
    {
        static void Main(string[] args)
        {
            //BaseClass baseClass = new DrivedClass();
            //baseClass.BaseMethod();
            //baseClass.DrivedMethod();
            //Console.WriteLine();
            //Console.ReadKey();
 
 
 
            DrivedClass driveClass = new DrivedClass();
            driveClass.BaseMethod();
            driveClass.DrivedMethod();
            Console.WriteLine();
            Console.ReadKey();
        }
    }
}
 
上面注釋的代碼,和沒有注釋的代碼,執行的效果是一樣的。
 

 

 

文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()