前言
因为前面学习一点C#视频,所以了解一点对象、类、属性、方法、面向对象、构造函数、重载等一些东西,都很直观的在自己的脑海中有了一点印象,但是为什么要有构造函数?自己咋也想不起来了!现在开始回顾,什么是构造函数?构造函数有什么作用?
什么是构造函数?
我们现在来写一个构造函数,在写构造函数之前我们要知道构造函数是写在类里面的,所以我们要先写一个类。
Public@H_403_16@ Class@H_403_16@ Student '学生类@H_403_16@
'无参构造方法@H_403_16@
Public@H_403_16@ Sub@H_403_16@ New@H_403_16@()
End@H_403_16@ Sub@H_403_16@
'有参构造方法@H_403_16@
Public@H_403_16@ Sub@H_403_16@ New@H_403_16@(ByVal@H_403_16@ stuNo As@H_403_16@ String@H_403_16@,ByVal@H_403_16@ stuName As@H_403_16@ String@H_403_16@,ByVal@H_403_16@ stuAge As@H_403_16@ Integer@H_403_16@,_
ByVal@H_403_16@ stuAddress As@H_403_16@ String@H_403_16@)
Me@H_403_16@.StuNo = stuNo
Me@H_403_16@.StuName = stuName
End@H_403_16@ Sub@H_403_16@
'学生号字段@H_403_16@
Private@H_403_16@ stuNo As@H_403_16@ String@H_403_16@
'学生号属性@H_403_16@
Public@H_403_16@ Property@H_403_16@ StuNo() As@H_403_16@ String@H_403_16@
Get@H_403_16@ '可读@H_403_16@
Return@H_403_16@ stuNo
End@H_403_16@ Get@H_403_16@
Set@H_403_16@ (ByVal@H_403_16@ Value As@H_403_16@ String@H_403_16@) '可写@H_403_16@
stuNo = value
End@H_403_16@ Set@H_403_16@
End@H_403_16@ Property@H_403_16@
'学生姓名字段@H_403_16@
Private@H_403_16@ stuName As@H_403_16@ String@H_403_16@
'学生姓名属性@H_403_16@
Public@H_403_16@ Property@H_403_16@ StuName() As@H_403_16@ String@H_403_16@
Get@H_403_16@
Return@H_403_16@ stuName
End@H_403_16@ Get@H_403_16@
Set@H_403_16@ (ByVal@H_403_16@ Value As@H_403_16@ String@H_403_16@)
stuName = value
End@H_403_16@ Set@H_403_16@
End@H_403_16@ Property@H_403_16@
Public@H_403_16@ Class@H_403_16@ Form1
Private@H_403_16@ Sub@H_403_16@ btnOK_Click(sender As@H_403_16@ Object@H_403_16@,e As@H_403_16@ EventArgs) Handles@H_403_16@ btnOK.Click
'类的实例化 学生“张三”@H_403_16@
Dim@H_403_16@ Student1 As@H_403_16@ New@H_403_16@ Student("00001"@H_403_16@,张三) 'new后面调用的是构造函数@H_403_16@
End@H_403_16@ Sub@H_403_16@
'通过属性给对象赋值@H_403_16@
'StuNo="00001"@H_403_16@
'StuName="张三"@H_403_16@
在一个类中,当用户没有显式的去定义构造函数时,编译器会为类生成一个默认的构造函数(无参数的构造函数),称为 “默认构造函数”,默认构造函数不能完成对象数据成员的初始化,只能给对象创建一标识符,并为对象中的数据成员开辟一定的内存空间。当你构建了一个构造函数这时系统创建的构造函数就会被覆盖掉。
构造函数有什么作用?
构造函数主要用来在创建对象时完成对对象属性的一些初始化等操作,当创建对象时,对象会自动调用它的构造函数。一般来说,构造函数有以下三个方面的作用: 1、给创建的对象建立一个标识符; 2、为对象数据成员开辟内存空间; 3、完成对象数据成员的初始化。