最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#中抽象方法與虛擬方法的區(qū)別

 更新時(shí)間:2014年08月21日 09:12:59   投稿:shichen2014  
這篇文章主要介紹了C#中抽象方法與虛擬方法的區(qū)別,對(duì)于C#初學(xué)者來(lái)說(shuō)可以深入理解抽象方法與虛擬方法,需要的朋友可以參考下

學(xué)過(guò)C#的人應(yīng)該都知道抽象方法與虛擬方法,而很多初學(xué)者對(duì)二者之間的區(qū)別并不是很了解。今天本文就來(lái)分析一下二者之間的區(qū)別。并附上實(shí)例加以說(shuō)明。具體分析如下:

一、主要區(qū)別:

對(duì)于抽象方法,子類(lèi)必須實(shí)現(xiàn)它。

對(duì)于虛擬方法,子類(lèi)可以重寫(xiě)也可以不重寫(xiě)

因此,兩者約束不同

二、實(shí)例代碼如下:

/* 聲明一個(gè)抽象類(lèi)
* 1.抽象類(lèi)中可以包含變量
* 2.抽象方法中無(wú)法聲明方法體
*/
abstract class AbsClass
{  
  string name;
  public abstract void DisplayValue(string value);
}

/*繼承抽象類(lèi)的子類(lèi)必須實(shí)現(xiàn)抽象方法*/
class AbsClassInherited : AbsClass
{
  /*使用override重寫(xiě)實(shí)現(xiàn)*/
  public override void DisplayValue(string value)
  {
    Console.WriteLine(value.ToUpper());
  }
}
 /* 聲明虛擬函數(shù)
 */
class VirtClass
{
  /*聲明一個(gè)虛擬函數(shù)
   虛擬函數(shù)必須實(shí)現(xiàn)方法體*/
  public virtual void DisplayValue(string value)
  {
    Console.WriteLine(value);
  }
}
/*虛擬方法可以實(shí)現(xiàn)也可以不實(shí)現(xiàn)*/
class VirtClassInherited : VirtClass
{
  /*使用override重寫(xiě)實(shí)現(xiàn)*/
  public override void DisplayValue(string value)
  {
    Console.WriteLine(value.ToUpper());
  }
}

/* 聲明一個(gè)接口
 * 1.接口中的方法必須是公用的
 * 2.接口中不允許有變量
 * 3.接口中的方法不允許有方法體
 */
interface IAbs
{
  void DisplayValue(string value);
}

希望本文所做的分析對(duì)大家的C#程序設(shè)計(jì)能有所幫助。

相關(guān)文章

最新評(píng)論

芒康县| 开化县| 嘉荫县| 阳信县| 南华县| 繁峙县| 鹤峰县| 中山市| 德保县| 大姚县| 平舆县| 夏邑县| 丹阳市| 苏尼特左旗| 临泉县| 乐陵市| 望江县| 海伦市| 教育| 宜兰县| 康保县| 石林| 五寨县| 惠来县| 和硕县| 古蔺县| 松阳县| 东乡族自治县| 郸城县| 昭苏县| 依安县| 民丰县| 醴陵市| 连山| 武城县| 永善县| 正蓝旗| 通江县| 建昌县| 琼海市| 南投县|