public class Test
{
    //这个Test函数和类名称相同为什么不需要返回参数类型?
    public Test(string file)
    {
     
    }
    
    //这个就必须要指定返回参数类型
    public Test2(){}
}希望尽量能详细点。。

解决方案 »

  1.   

    构造函数是一种特殊的成员函数,它主要用于为对象分配存储空间,对数据成员进行初始化.构造函数具有一些特殊的性质:(1)构造函数的名字必须与类同名;(2)构造函数没有返回类型,它可以带参数,也可以不带参数;(3)声明类对象时,系统自动调用构造函数,构造函数不能被显式调用;(4)构造函数可以重载,从而提供初始化类对象的不同方法;(5)若在声明时未定义构造函数,系统会自动生成默认的构造函数,此时构造函数的函数体为空.(6)静态构造函数,用static修饰,用于初始化静态变量,一个类只允许有一个构造函数,在类实例化时加载,这时修饰符public、private失去作用.(7)可以使用public、protected、private修饰符。.(8)引用父类构造时用():base()方法,引用自身重载的构造使用():this(int para).(7)可以使用public、protected、private修饰符。
      

  2.   


    主要用来在创建对象时初始化对象,即为对象成员变量赋初始值。总与new运算符一起使用在创建对象的语句中,特别的一个类可以有多个构造函数,可根据其参数个数的不同或参数类型的不同来区分它们,即构造函数的重载。