请教各位如何言简意赅的描述一下几个概念,以及他们的使用上的心得,在线

superxmz 2003-07-22 01:56:31
1、接口
2、抽象类
3、抽象方法
4、虚函数


...全文
23 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
EcRain 2003-07-30
  • 打赏
  • 举报
回复
dkk
shuyf2000 2003-07-22
  • 打赏
  • 举报
回复
UP
dahuzizyd 2003-07-22
  • 打赏
  • 举报
回复
1.接口:
一个接口定义一个协定。实现接口的类或结构必须遵守其协定。接口可以从多个基接口继承,而类或结构可以实现多个接口。

接口可以包含方法、属性、事件和索引器。接口本身不提供它所定义的成员的实现。接口只指定实现该接口的类或接口必须提供的成员。

2.抽象类:
abstract 修饰符用于指示类是不完整的,并且只能用作基类。抽象类与非抽象类在以下方面有所不同:
抽象类不能直接实例化,并且对抽象类使用 new 运算符是编译时错误。虽然可以具有运行时类型为抽象的变量和值,但是这样的变量和值必须为 null 或者包含对从抽象类派生的非抽象类的实例的引用。
允许(但不要求)抽象类包含抽象成员。
抽象类不能被密封。
当从抽象类派生非抽象类时,非抽象类必须包含所有继承抽象成员的实际实现。这样的实现是通过重写抽象成员提供的。

3.抽象方法:
当实例方法声明包含 abstract 修饰符时,称该方法为抽象方法。虽然抽象方法同时隐含为虚拟方法,但是它不能有 virtual 修饰符。

抽象方法声明引入新的虚拟方法,但不提供该方法的实现。相反,要求非抽象派生类通过重写该方法以提供它们自己的实现。

4.虚函数:当实例方法声明包含 virtual 修饰符时,称该方法为虚拟方法。不存在 virtual 修饰符时,称该方法为非虚拟方法。

具体的可以看帮助:
ms-help://MS.VSCC/MS.MSDNVS.2052/csspec/html/vclrfcsharpspec_10_5_3.htm
ms-help://MS.VSCC/MS.MSDNVS.2052/csspec/html/vclrfcsharpspec_10_5_6.htm
ms-help://MS.VSCC/MS.MSDNVS.2052/csspec/html/vclrfcsharpspec_10_1_1_1.htm
ms-help://MS.VSCC/MS.MSDNVS.2052/csspec/html/vclrfcsharpspec_13.htm



110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧