class Test {
private str="default";public void print() {
System.out.println(this.str);
}
public static void main(String []args) {
Test t=new Test();
t.print();
}
}
这个例子就是
Test类没有任何构造方法,但是我们照样可以new Test();
是因为系统自动为这个类写了一个没有参数的构造方法
public Test() {
}

解决方案 »

  1.   

    class A
    {
       public A(){
       }
    }
      

  2.   

    Test类没有任何构造方法,但是我们照样可以new Test();
    楼上的朋友是如上说的。
    那么我想知道:所谓的构造方法是个什么概念呢
    我是非常菜的。
      

  3.   

    构造方法我的理解是,类和类的实例是两个不同的概念,比如现实中的苹果和苹果这个名词是根本不同的,只有现实中的苹果才能吃什么的,类的实例是类具体化的表现,但是要想真正在HEAP上开辟出一块内存,必须有一个入口,构造函数就起到这个入口的作用.
      

  4.   

    楼上的把我说晕了! -_-!构造函数和内存分配没有关系的!我们使用new 类名()这样来创建一个对象时, JVM首先会装载类(如果类还未装载的话)和初始化静态变量, 接着为对象分配空间并初始化成员变量, 当这一切都执行妥当以后, 会自动调用一个函数, 这个函数的名字和类名一致, 这个函数就是构造函数(或者叫构造方法). 所以说, 构造函数是在所有初始化工作结束以后执行的.
      

  5.   

    至于什么是所谓的"缺省构造", 就是你不去书写任何构造函数时, 继承自Object类的那个没有参数的构造函数.
    一旦你书写了任何自己的构造函数, 就不存在"缺省构造"了, 这时一切构造函数都要自己定义.
      

  6.   

    回复人: javagodness(这年头,不学java嫁不出去了!) ( ) 信誉:100  2005-03-02 08:18:00  得分: 0  
     
     
       是不是每个没有写构造办法的类都是有缺省构造呢?
      
     
    ————————————————————————