C#中籠統辦法與虛擬辦法的差別。本站提示廣大學習愛好者:(C#中籠統辦法與虛擬辦法的差別)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中籠統辦法與虛擬辦法的差別正文
學過C#的人應當都曉得籠統辦法與虛擬辦法,而許多初學者對兩者之間的差別其實不是很懂得。明天本文就來剖析一下兩者之間的差別。並附上實例加以解釋。詳細剖析以下:
1、重要差別:
關於籠統辦法,子類必需完成它。
關於虛擬辦法,子類可以重寫也能夠不重寫。
是以,二者束縛分歧
2、實例代碼以下:
/* 聲明一個籠統類
* 1.籠統類中可以包括變量
* 2.籠統辦法中沒法聲明辦法體
*/
abstract class AbsClass
{
string name;
public abstract void DisplayValue(string value);
}
/*繼續籠統類的子類必需完成籠統辦法*/
class AbsClassInherited : AbsClass
{
/*應用override重寫完成*/
public override void DisplayValue(string value)
{
Console.WriteLine(value.ToUpper());
}
}
/* 聲明虛擬函數
*/
class VirtClass
{
/*聲明一個虛擬函數
虛擬函數必需完成辦法體*/
public virtual void DisplayValue(string value)
{
Console.WriteLine(value);
}
}
/*虛擬辦法可以完成也能夠不完成*/
class VirtClassInherited : VirtClass
{
/*應用override重寫完成*/
public override void DisplayValue(string value)
{
Console.WriteLine(value.ToUpper());
}
}
/* 聲明一個接口
* 1.接口中的辦法必需是公用的
* 2.接口中不許可有變量
* 3.接口中的辦法不許可無方法體
*/
interface IAbs
{
void DisplayValue(string value);
}
願望本文所做的剖析對年夜家的C#法式設計能有所贊助。