我的编程空间,编程开发者的网络收藏夹
学习永远不晚

VB.NET构造函数实际处理方式

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

VB.NET构造函数实际处理方式

这篇文章给大家介绍VB.NET构造函数实际处理方式,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

在开发领域,已经出现了许多种开发语言供编程人员随自己的需求进行选择应用。比如VB.NET语言就可以对有特定需求的开发人员进行一定的帮助。VB.NET构造函数进行处理的时侯,有两个陈述值得注意:

  • VB.NET控件数组问题相关解决方案解析

  • 闲谈VB.NET cstr函数性能特点

  • VB.NET连接数据库相关操作技巧介绍

  • 深入剖析VB.NET验证LDAP用户身份

  • 详细解读VB.NET实现Singleton模式操作步

(1) 如果类型不包含任何实例构造函数声明,则VB.NET提供默认的构造函数;

默认参数调用直接基类的无参数构造函数。如果基类没有可访问的无参数构造函数,则发生编译期错误。

(2) 构造函数不能继承;

陈述(1)包含两个方面的信息:

①是如果类型不包含任何实例构造函数声明,则VB.NET提供默认的构造函数,即下面的声明是允许的,在类Shape中我们没有显式声明任何构造函数,但是我们仍然可以通过VB.NET自动提供的无参数构造函数New()来实例化类;

  1. Module TestModule Test   

  2. Public Sub Main()Sub Main()   

  3. Dim shape1 As Shape = New Shape   

  4. End Sub   

  5. End Module   

  6. Public Class ShapeClass Shape   

  7. Public Sub Draw()Sub Draw()   

  8. 'some codes here.   

  9. End Sub   

  10. End Class  

②是如果类型中包含有实例构造函数的声明,那么VB.NET不再提供默认的构造函数,例如,我们在类Shape中添加了一个带参数的构造函数,

Public Class ShapeClass Shape   Private _pt As Point   Public Sub New()Sub New(p As Point)   _pt = p   End Sub   Public Sub Draw()Sub Draw()   'some codes here.   End Sub   End Class

那么,如果直接实例化类时,则会产生错误;

Dim shape1 As Shape = New Shape

只能通过调用Shape类中显式声明的带参数的构造函数来实例化类,如下,

Dim shape1 As Shape = New Shape(New Point(0, 0))

因此,如果要在类中同时使用无参数和带参数的构造函数,必须同时显式地声明两种构造函数。

Public Class ShapeClass Shape   Private _pt As Point   Public Sub New()Sub New()   'some codes here.   End Sub   Public Sub New()Sub New(p As Point)   _pt = p   End Sub   Public Sub Draw()Sub Draw()   'some codes here.   End Sub   End Class

陈述(2),构造函数不能继承,即,如果要使子类与基类有相同的构造函数,那么必须在每个子类中都显式的声明与基类构造相同的构造函数,例如:

  1. Public MustInherit Class 
    ShapeClass Shape   

  2. Private _pt As Point   

  3. Public Sub New()Sub New()   

  4. 'some codes here.   

  5. End Sub   

  6. Public Sub New()Sub New(p As Point)   

  7. _pt = p   

  8. End Sub   

  9. Public MustOverride Sub Draw()Sub Draw()   

  10. End Class   

  11. Public Class LineClass Line   

  12. Inherits Shape   

  13. Public Sub New()Sub New()   

  14. End Sub   

  15. Public Sub New()Sub New(p As Point)   

  16. MyBase.New(p)   

  17. End Sub   

  18. Public Overrides Sub Draw()Sub Draw()   

  19. 'some codes here.   

  20. End Sub   

  21. End Class  

这一点非常重要而且也很有意义。因为我们往往倾向于认为子类继承了基类所有的属性和方法,这往往导致我们的程序出现编译错误。

综合以上两个陈述,在实际编程中应遵循一个原则:在类中,无论是基类还是子类,显式地声明所有需要的无参数或带参数构造函数。遵循这个原则,既有利于提高编译正确代码的速度,也有利于自己和其他程序员理解代码。

关于VB.NET构造函数实际处理方式就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

VB.NET构造函数实际处理方式

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

VB.NET构造函数实际处理方式

这篇文章给大家介绍VB.NET构造函数实际处理方式,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在开发领域,已经出现了许多种开发语言供编程人员随自己的需求进行选择应用。比如VB.NET语言就可以对有特定需求的开发人员进
2023-06-17

js中Array构造器的处理方式有哪些

小编给大家分享一下js中Array构造器的处理方式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、newArray(arg1,arg2,…),当参数长度为
2023-06-25

实战演练:JavaScript 构造函数模式,打造你的第一个项目!

JavaScript 构造函数模式是一种创建和管理对象的方式。它使用 new 关键字来创建对象,并使用 prototype 属性来继承父对象的方法和属性。在本教程中,我们将向您展示如何使用构造函数模式来创建您的第一个项目。
实战演练:JavaScript 构造函数模式,打造你的第一个项目!
2024-02-23

Java8处理数据的函数式方式是什么

本篇内容介绍了“Java8处理数据的函数式方式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!处理数据的函数式方式Java 8 不仅仅添
2023-06-17

Golang 函数对返回结果的处理方式

go 函数可以通过 return 语句返回结果,返回结果类型由函数签名中的最后一个参数列表决定。处理返回结果的方法包括:无返回结果:无须处理。单一返回值:使用赋值运算符分配给变量。多个返回值:使用多个变量接收,顺序与函数签名一致。命名字段返
Golang 函数对返回结果的处理方式
2024-05-23

C++对全局函数的处理方式是什么

这篇文章主要介绍“C++对全局函数的处理方式是什么”,在日常操作中,相信很多人在C++对全局函数的处理方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++对全局函数的处理方式是什么”的疑惑有所帮助!
2023-06-17

利用 PHP 函数实现分布式任务处理

php 提供函数实现分布式任务处理,包括:php-amqplib:用于与消息代理交互,将任务封装成消息并发送到队列。pcntl_fork:用于创建子进程,实现任务并行处理。利用 PHP 函数实现分布式任务处理背景随着现代应用的不断复杂化
利用 PHP 函数实现分布式任务处理
2024-04-22

使用Golang函数实现分布式任务处理

使用 go 函数进行分布式任务处理利用函数式编程简化分布式任务处理,提高代码可读性和可维护性。go 函数通过创建 goroutine 池并使用缓冲通道,实现可靠、并行和负载均衡的任务分配。实战案例中,我们使用函数处理文件,并通过 distr
使用Golang函数实现分布式任务处理
2024-05-02

函数异常处理的最佳实践和模式

函数异常处理的最佳实践和模式在编写代码时,异常处理对于确保应用程序的健壮性和可靠性至关重要。通过遵循最佳实践和模式,你可以有效地处理错误情况和异常。最佳实践1. 使用 try-catch 块:try-catch 块用于捕获并处理可能发
函数异常处理的最佳实践和模式
2024-04-13

C++ 函数参数传递方式与异常处理的关联

c++++ 函数参数传递方式影响异常处理:值传递:异常不传播到调用函数。引用传递:异常传播到调用函数。指针传递:异常传播到调用函数,且指向变量抛出异常。C++ 函数参数传递方式与异常处理的关联在 C++ 中,函数参数可以以值传递、引用传递
C++ 函数参数传递方式与异常处理的关联
2024-04-13

分布式系统中 Golang 函数的异常处理实践

golang 分布式系统中异常处理采用 errgroup 包,它提供了并发的错误组。实操案例中,通过 errgroup.withcontext 创建带有上下文的 errgroup,并使用 g.go 并发执行多个模拟任务的 goroutine
分布式系统中 Golang 函数的异常处理实践
2024-04-19

C++ 函数异常处理在应用程序设计的实际应用场景有哪些?

函数异常处理是一种处理意外事件或错误的机制,使用 try-catch 块来处理异常。在应用程序设计中,它用于错误处理、资源管理和数据验证等方面。例如,在文件处理中,当打开文件失败时,函数异常处理可抛出异常,并通过 try-catch 块捕获
C++ 函数异常处理在应用程序设计的实际应用场景有哪些?
2024-04-15

PHP 函数的参数传递方式如何处理大规模数据传递?

函数参数传递方式对处理大规模数据至关重要。php 提供三种方式:1)传值传递:副本传递给函数,不影响原始变量;2)传址传递:传递原始变量的引用,函数中修改会影响原始变量;3)传引用传递:强制参数作为引用传递,即使传入基本类型也会如此。PHP
PHP 函数的参数传递方式如何处理大规模数据传递?
2024-04-15

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录