学习ASP.Net已经有一段时间了,但一直搞不清楚C#中的构造函数到底是什么,今天在写代码的时候突然明白了构造函数是什么,所以特地写在这里,以便以后温习,同时也将我的理解与各位园友分享.
一,定义:构造函数是一种特殊的方法,它在类的每个实例创建的时候执行.
二,作用:用于初始化类实例的状态.
三,分类:
1,实例构造函数:a,不带参数的构造函数;b,带参数的构造函数;c,默认构造函数(如果在类的声明中没有显示地提供实例构造函数,那么编译器会提供一个隐式的默认构造函数)
2,静态构造函数.
四,带参数的构造函数实例:
class Class1
{
int Id;
string Name;
public Class1() {Id=28;Name="Nemo";}
public Class1(int val) {Id=val;Name=""Nemo;}
public Class1(string name) {Name=name;}
public void SoundOff()
{
Console.WriteLine("Name={0},Id={1}",Name,Id);
}
}
class Program
{
static void main()
{
Class1 a=new Class1(),
Class1 b=new Class1(7),
Class1 c=new Class1("Bill"),
a.SoundOff();
b.SoundOff();
c.SoundOff();
}
}
输出结果为:
Name=Nemo,Id=28;
Name=Nemo,Id=7;
Name=Bill,Id=0;
由此可以联想到,在ADO.NET中,实例化SqlCommand对象的时候有多种参数,如下:
1,不带参数;SqlCommand cmd=new SqlCommand();
2,SqlCommand cmd=new SqlCommand(String);注:string为sql语句或存储过程.
3,SqlCommand cmd=new SqlCommand(String, SqlConnection);注:string为sql语句或存储过程,SqlConnection表示数据库连接实例.
其中第3种最为常用.