如题。
我有一个TestClass类,它的构造函数我可以写成如下格式吗?public class TestClass {    // 构造函数
    public void TestClass() {    }……还是说构造函数必须写成下面的格式?    // 构造函数
    public TestClass() {    }        

解决方案 »

  1.   

    构造方法是特殊的类方法,有着特殊的功能。它的名字与类名相同,没有返回值,在创建对象实例时由new运算符自动调用。
    ……
    构造方法不能说明为native, abstract, synchronized或final, 也不能从父类继承构造方法。
    总结一下构造方法有以下的特征:
     构造方法的名字与类名相同。
     没有返回值类型。
     必须为所有的变量赋初值。
     通常说明为public类型的,即共有的。
     可以按需包含所需的参数列表。参考书目:《Java程序设计(第二版)》,新世纪计算机基础教育丛书,丛书主编:谭浩强,清华大学出版社我还是没有看明白可不可以用void。
      

  2.   

    构造函数必须与类同名、可以有多个参数的构造函数,但绝不可以有返回类型。
    public class TestClass{
         //默认构造函数
         public TestClass(){
             
         }     //带1个参数的构造函数
         public TestClass(int i){
         
         }     //带2个参数的构造函数
         public TestClass(String args, int i){     }     ......
    }
      

  3.   

    共同学习...每创建一个类的实例都去初始化它的所有变量是乏味的。如果一个对象在被创建时就完成了所有的初始工作,将是简单的和简洁的。因此,Java在类里提供了一个特殊的成员函数,叫做构造函数(Constructor)。 
    一个构造函数是对象被创建时初始对象的成员函数。它具有和它所在的类完全一样的名字。一旦定义好一个构造函数,创建对象时就会自动调用它。构造函数没有返回类型,即使是void类型也没有。这是因为一个类的构造函数的返回值的类型就是这个类本身。构造函数的任务是初始化一个对象的内部状态,所以用new操作符创建一个实例后,立刻就会得到一个清楚、可用的对象。 构造方法是一种特殊的方法,具有以下特点。 
    (1)构造方法的方法名必须与类名相同。 
    (2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。 
    (3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。 
    (4)构造方法不能由编程人员调用,而要系统调用。 
    (5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。 
    (6)构造方法可以重载,以参数的个数,类型,或排列顺序区分。