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 @   徐少侠  阅读(540)  评论(1编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
作者:徐少侠 出处:http://www.cnblogs.com/Chinese-xu/

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

点击右上角即可分享
微信分享提示