前言

  因为前面学习一点C#视频,所以了解一点对象、类、属性、方法、面向对象、构造函数、重载等一些东西,都很直观的在自己的脑海中有了一点印象,但是为什么要有构造函数?自己咋也想不起来了!现在开始回顾,什么是构造函数?构造函数有什么作用?

什么是构造函数?

  我们现在来写一个构造函数,在写构造函数之前我们要知道构造函数是写在类里面的,所以我们要先写一个类。

Public Class Student                   '学生类'无参构造方法Public  Sub New()End Sub'有参构造方法Public Sub New(ByVal stuNo As String, ByVal stuName As String, ByVal stuAge As Integer,     _ByVal stuAddress As String)Me.StuNo = stuNoMe.StuName = stuNameEnd Sub'学生号字段Private stuNo As String'学生号属性Public Property StuNo() As StringGet                             '可读Return stuNoEnd GetSet (ByVal Value As String)     '可写stuNo = valueEnd SetEnd Property'学生姓名字段Private stuName As String'学生姓名属性Public Property StuName() As StringGet Return stuNameEnd GetSet (ByVal Value As String) stuName = valueEnd SetEnd Property
Public Class Form1Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click'类的实例化  学生“张三”Dim Student1 As New Student("00001", 张三)   'new后面调用的是构造函数End Sub'通过属性给对象赋值'StuNo="00001"'StuName="张三"

  
  在一个类中,当用户没有显式的去定义构造函数时, 编译器会为类生成一个默认的构造函数(无参数的构造函数), 称为 “默认构造函数”, 默认构造函数不能完成对象数据成员的初始化, 只能给对象创建一标识符, 并为对象中的数据成员开辟一定的内存空间。当你构建了一个构造函数这时系统创建的构造函数就会被覆盖掉。

构造函数有什么作用?

  构造函数主要用来在创建对象时完成对对象属性的一些初始化等操作,当创建对象时,对象会自动调用它的构造函数。一般来说,构造函数有以下三个方面的作用:
1、给创建的对象建立一个标识符;
2、为对象数据成员开辟内存空间;
3、完成对象数据成员的初始化。

VB.NET构造函数相关推荐

  1. C++中对象的赋值拷贝构造函数

    目录 1.对象与对象之间的赋值. 下面给出代码说明赋值语句 对象赋值的限制和特点 2.拷贝构造函数 拷贝构造函数的特点 自定义的拷贝构造函数的代码及运行结果 默认拷贝构造函数 调用拷贝构造函数的3种情 ...

  2. C++创建 可以实例化但不能继承的类

    class vb{ private:       vb(){}  friend C;    } //vb这个是一个基类,它的构造函数是private,因此它根本就无法被创建.但是我们显式增加了一个fr ...

  3. VB.net入门(6):类~构造函数,事件

    参考视频 https://www.xin3721.com/eschool/VBNetxin3721/ VB.net中的类的构造函数是 sub New() end sub 当然,你也可以加参数.比如Hu ...

  4. VB.NET模块的总结(一)精简版

    Module Module1   Public aNew As String  '全局公共成员变量,可以在当前项目的任何类和模块中引用   'Dim aNew As String  '模块的成员变量( ...

  5. VB.NET中的日期时间转换

    刚刚学习VB.NET不久,在做几个小例子的时候发现经常要对日期时间和字符串之间进行转换,现整理如下,如有不正确的地方请大家指出. ----------------------------------- ...

  6. 设计模式方法VB.NET机房个人重构版-磨刀篇(一)

    时间紧张,先记一笔,后续优化与完善. 原创作品,答应转载,转载时请务必以超链接形式标明文章原始出处 :http://blog.csdn.net/lantingxv_jing/article/detai ...

  7. 三层登录VB.NET实现

    三层登录VB.NET实现 用C#实现了一遍三层登录,然后再使用VB.NET实现,然后转为七层登录,七层登录成功后,直接开始机房的VB.NET个人重构. 具体的过程省略了,直接上代码: 界面层 Impo ...

  8. 使用VC编写VB使用DLL

    使用VC编写VB使用DLL 一.在函数定义前必须加上extern "c",_stdcall关键字.  extern "C" int _stdcall Sum(i ...

  9. vb.net2019-多线程并行计算(4)

    三.栈内存 1.每个WINDOWS都有一个栈基址和栈限址,二者合在一起表示栈的有效内存范围.栈限址不是固定的,程序需要更多内存空间里,栈限址没有超过保留的栈内存范围,则可以要求更多的内存页 2.在栈限 ...

最新文章

  1. 硬铺路、软筑墙:三星移动在中国的新路径
  2. 离开域后打开Office慢 Openfiler
  3. 一群人花费了四年的时间以NASA的数据巨制“月球”
  4. Office365 Manager Plus之报表
  5. 开发基础(字符编码、列表操作)
  6. 【已解决】“The import java.sql.Connection conflicts with a type defined in the same file“
  7. join和countDownLatch原理及区别详解
  8. 一键分享手机代码_通过广告路由器指定手机浏览器自动认证WIFI上网 附代码
  9. debian dhcp服务启动不了_DHCP服务器配置
  10. ORA-65096: 公用用户名或角色名无效引发的思考
  11. PyTorch 1.0 中文官方教程:使用 PyTorch C++ 前端
  12. Linux内核深入理解定时器和时间管理(2):clocksource 框架
  13. 不能执行已释放 Script 的代码
  14. 线性可分支持向量机 凸二次规划解决原问题 python
  15. 浏览器打开默认为360主页,如何修改
  16. ldo和dcdc功耗_LDO和DCDC电源的优缺点以及差别
  17. 微信小程序 弹出确定取消框
  18. python 删除word 某一章节_聊聊python 办公自动化之 Word(中)
  19. 这些AI开源项目可以让你创作出卢浮宫级别的艺术品!
  20. 国产骨传导耳机推荐,目前最好用的几款骨传导耳机

热门文章

  1. SD-Flasher在win7系统里面烧写SD卡的问题
  2. 雷达干扰模拟器3-信号侦察
  3. 手机adb 连接不到电脑,但是可以连接到各种助手
  4. 八大知识点快速读懂以太坊合并与分叉
  5. 计算机联锁系统操作显示规范,计算机联锁系统系列操作基础手册.doc
  6. 执行Mysql命令后,不会显示 warning(错误) 信息的解决方案
  7. PHP 获取网络图片资源并保存
  8. 基于QTGUI图像界面的空战游戏设计
  9. 学习PCL库:PCL库中的IO模块介绍
  10. Oracle的告警日志之v$diag_alert_ext视图