Free Hit Counters
http://www.dellasdeals.com

[MSDN转载]Visual Basic 语言概念--阴影操作和重写之间的差异

最近复习OO概念,不想在VB2005里头挖出这么个以前不注意的东西来,把帮助文件的内容贴上来,作为备忘.

Visual Basic 语言概念

阴影操作和重写之间的差异

请参见

当您定义从基类继承的类时,有时会需要重定义派生类中的一个或多个基类元素。隐藏和重写均可用于此目的。

比较

隐藏和重写很容易混淆。二者都在派生类继承基类时使用,并且都是用另外的元素重定义一个已声明的元素。但二者之间有重大区别。

下表对隐藏和重写进行了比较。

重写和隐藏的比较

1“调用序列”包括元素类型(Function、Sub、Operator 或 Property)、名称、参数列表和返回类型。不能用属性重写过程,或是用过程重写属性。您不能用一种过程重写另一种过程(Function、Sub 或 Operator)。

2 如果不指定 Shadows 或 Overrides,则编译器会发出一条警告消息,以帮助您确定要使用哪种重定义。如果忽略该警告,则使用隐藏机制。

3 若隐藏元素在后来的派生类中不可访问,则没有继承隐藏。例如,如果将隐藏元素声明为 Private,则从派生类派生的类就会继承原始元素而不是隐藏元素。

准则

重写通常用在以下情况下:

  • 您要定义多态性派生类。

  • 您需要安全地让编译器强制执行相同元素类型和调用序列。

隐藏通常用在以下情况下:

  • 您希望可以修改基类并使用您的名称定义元素。

  • 您希望可以随意更改元素类型或调用序列。

请参见

任务
如何:区分两个名称相同的元素
如何:隐藏与您的变量同名的变量
如何:隐藏继承的变量
如何:访问被派生类隐藏的变量
参考
Shadows
Overrides
概念
当多个变量具有同一名称时解析引用
Visual Basic 中的阴影操作
其他资源
对已声明元素的引用

Footer image

要提出有关“帮助”或本产品其他功能的建议或错误报告,请转到反馈站点

posted @ 2007-08-09 13:03  徐少侠  阅读(535)  评论(1编辑  收藏  举报
作者:徐少侠 出处:http://www.cnblogs.com/Chinese-xu/

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过 Chinese_Xu@126.com 联系我,非常感谢。