时间:2021-05-20
学过C#的人应该都知道抽象方法与虚拟方法,而很多初学者对二者之间的区别并不是很了解。今天本文就来分析一下二者之间的区别。并附上实例加以说明。具体分析如下:
一、主要区别:
对于抽象方法,子类必须实现它。
对于虚拟方法,子类可以重写也可以不重写。
因此,两者约束不同
二、实例代码如下:
/* 声明一个抽象类* 1.抽象类中可以包含变量* 2.抽象方法中无法声明方法体*/abstract class AbsClass{ string name; public abstract void DisplayValue(string value);}class AbsClassInherited : AbsClass{ public override void DisplayValue(string value) { Console.WriteLine(value.ToUpper()); }} class VirtClass{ public virtual void DisplayValue(string value) { Console.WriteLine(value); }}class VirtClassInherited : VirtClass{ public override void DisplayValue(string value) { Console.WriteLine(value.ToUpper()); }}/* 声明一个接口 * 1.接口中的方法必须是公用的 * 2.接口中不允许有变量 * 3.接口中的方法不允许有方法体 */interface IAbs{ void DisplayValue(string value);}希望本文所做的分析对大家的C#程序设计能有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#中Out与Ref的区别,可以加深C#程序设计人员对Out和Ref用法的理解,具体分析如下:一、区别分析:Out和Ref作为参数传递到方法体中,
本文实例为大家分享了C#抽象类与抽象方法的具体实现代码,供大家参考,具体内容如下1.代码classProgram{staticvoidMain(string[]
本文简述了C#中实现抽象类里建立静态方法的解决办法,示例程序如下:publicclassTestMain{publicstaticvoidmain(String
复制代码代码如下: //////interface///与抽象类的区别:///1,abstract可以有具体方法和抽象方法(必须有一个抽象方法),interf
今天在云和学院学了很多,我这次只能先总结一下C#中的虚方法和抽象的运用。理论:虚方法:用virtual修饰的方法叫做虚方法虚方法可以在子类中通过override