C#之构造方法
2016-02-24 20:23
453 查看
定义
构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载。分类
无参构造方法没有参数的构造方法称为默认构造方法,使用new表达式创建某个类的对象时,会使用无参构造函数创建和初始化所有实例成员变量。
public class ProgramTest { int j; public ProgramTest() { j = 4; Console.WriteLine("I am ProgramTest,{0}", j); } static void Main(string[] args) { ProgramTest pt = new ProgramTest(); Console.Read(); } 结果为:I am ProgramTest,4
当我实例化类ProgramTest时,就会执行实例构造函数。如果某个类没有构造函数,则会自动生成一个默认构造函数,并使用默认值来初始化对象字段。
有参构造方法
构造方法可以被重载。与一般的方法一样,构造方法可以进行任何活动,但是经常将他设计为进行各种初始化活动,比如初始化对象的属性。
对比:
public class ProgramTest { int j; public ProgramTest() { j = 3; Console.WriteLine("I am ProgramTest 默认构造函数,j={0}", j); } public ProgramTest(int i) { j = 2; Console.WriteLine("I am ProgramTest 有参构造函数,i={0},j={1}",i, j); } static void Main(string[] args) { ProgramTest pt1 = new ProgramTest(); ProgramTest pt2 = new ProgramTest(1); Console.Read(); } 结果为:I am ProgramTest 默认构造函数 j=3 I am ProgramTest 有参构造函数 i=1,j=2
特点
(1)构造函数的名字必须与类同名;(2)构造函数没有返回类型,它可以带参数,也可以不带参数;
(3)声明类对象时,系统自动调用构造函数,构造函数不能被显式调用;
(4)构造函数可以重载,从而提供初始化类对象的不同方法;
(5)若在声明时未定义构造函数,系统会自动生成默认的构造函数,此时构造函数的函数体为空.
与方法的区别
<span style="font-family:KaiTi_GB2312;font-size:18px;">class test</span> <span style="font-family:KaiTi_GB2312;font-size:18px;">{ private int x,y; public test() { //这里可以写相应的初始化代码,可以不写 } public test(int a) { y=a; } test t1=new test()//这个就会调用没有带参数的那个 test t2=new test (3)//这样的话,y就初始化为3了 } </span>
【总结】
在一开始看到构造函数的时候觉得也没什么,等症的取用的时候才发现构造函数原来是这麽有内涵的东西,本着“知其然更要知其所以然”的态度,把构造函数的知识查了查真是收获很大呀。相关文章推荐
- C# 结构的特点
- C#-StructLayoutAttribute(结构体布局)
- C#中的IntPtr类型
- C#将一个excel工作表根据指定范围拆分为多个excel文件
- C# DataTable Compute方法的使用
- C#访问openfire服务器之一:服务端的安装、客户端的简介
- C#调用金数据API
- C#访问openfire服务器之三:一次成功的登录
- C#原理
- C# using 三种使用方式
- C#怎么设置子窗体在主窗体中居中显示
- C#进阶系列——WebApi接口测试工具:WebApiTestClient
- C#创建唯一的订单号, 考虑时间因素
- C# 串口通讯
- C# DateTime详解
- c# virtual详解
- 登山-C#-自定义特性
- C#程序结构
- C#使用Log4Net记录日志
- C# 常用加密方式