国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

關于C#中虛方法重載的說明

2024-07-21 02:18:50
字體:
來源:轉載
供稿:網友
在c#中,進行虛方法的重載有些體會,現與大家分享。
首先請大家看看下面的例子,
using system;

abstract public class contact
{
public virtual string prinf()
{
return ("這是虛方法");
}
}

public class class1:contact
{
public string prinf()
{
return ("這是新的方法");//但這會出現編譯警告,因為已經從contact那繼承了一個同名方法
}
}
想要通過編譯,只需將prinf的聲明改為
public override string prinf()

public new string prinf()
但是這兩種聲明方式是有區別的,
請看下面的例子:
using system;

abstract public class contact
{
public virtual string prinf()
{
return ("這是虛方法");
}
}

public class class1:contact
{
public override string prinf()
{
return ("這是新的方法");
}
}
public class class2:contact
{
public new string prinf()
{
return ("這是另一個新的方法");
}
}
public class text
{
public static void main()
{
contact [] contacts=new contact [2];
contacts[0]=new class1;
contacts[1]=new class2;
foreach(contact ct in contacts)
{
console.writeline(ct.printf);
}
}
}

最后我們看到的結果是

這是新的方法
這是虛方法


而沒有看見“這是另一個新的方法”,這是因為class2沒有重載虛方法,而是重新定義了一個方法!
這就是兩者的區別!!!

上一篇:在C#中如何發送Email

下一篇:OwnerDraw in C#

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 徐闻县| 神木县| 安宁市| 贞丰县| 宽甸| 安塞县| 宿州市| 永德县| 辉南县| 青川县| 博乐市| 虎林市| 榆中县| 北票市| 桐庐县| 东海县| 左云县| 安达市| 万安县| 普陀区| 浑源县| 日喀则市| 桃园市| 宜州市| 海伦市| 信阳市| 新闻| 中江县| 晋中市| 峨眉山市| 佛学| 瑞金市| 类乌齐县| 革吉县| 都兰县| 长白| 平度市| 砀山县| 西宁市| 菏泽市| 万全县|