C #类的构造函数与析构函数 1. 构造函数: 类的构造函数是用来创建类的一个实例。 创建一个实例的一般形式: 类名 实例名 = new 类名(构造函数参数列表); 构造函数和类中其他函数相比,是较为特殊的,它的名称必须和类同名。 定义一个构造函数的一般形式是: Class 类名 { 类名(参数表);//就是定义构造函数 { //语句 } } 例子: using System; class MyClass { MyClass() { Console.WriteLine("启动构造函数"); Console.ReadLine(); } public static void Main() { MyClass cM = new MyClass(); } } 运行结果: MyClass()就是一个构造函数,构造函数是没有任何返回值的。 构造函数也可以携带参数,看下面的例子: using System; class userName { string Uname; //定义一个带参数的构造函数 public userName(string name) { Console.WriteLine("新建一个用户:"); Uname = name; } public void ShowName() { Console.WriteLine("用户名是:"+ Uname); } public static void Main() { //用带参数的构造函数创建类的一个实例 userName uN1 = new userName("zhanghua"); uN1.ShowName(); Console.ReadLine(); } } 运行结果: 2. 析构函数 定义一个析构函数的一般形式是: Class 类名 { ~类名(参数表);//定义析构函数 { //语句 } } 析构函数的使用: using System; class First { public First() { Console.WriteLine("First's constructor is called"); } ~First() { Console.WriteLine("First's destructor is called"); } } class Second { public Second() { Console.WriteLine("Sencond's constructor is called"); } ~Second() { Console.WriteLine("Second's destructor is called"); } } class Third { public Third() { Console.WriteLine("Third's constructor is called"); } ~Third() { Console.WriteLine("Third's destructor is called"); } } public class MainClass { public static void Main() { First myObject1 = new First(); Second myObject2 = new Second(); Third myObject3 = new Third(); } } 运行结果: