JAVA中的 new Cupboard(); s=new Cupboard(); 
Cupboard s=new Cupboard(); 
这三个有什么不同吗? 
具体的用法是什么。这个问题困扰我很久了,到现在我都还没弄明白。

解决方案 »

  1.   

    new是生成新对象,并在内存分布空间,Cupboard s是生成它的引用名,所以前半句只是生成引用名,并不分配空间。后半句才是真正的生成对象,而等号是把对象赋值给引用名用来方便的引用。
      

  2.   

    new Cupboard();  new 是构造一个新对象,
    s=new Cupboard(); s 应该是Cupboard一个对象变量,
    Cupboard s=new Cupboard(); 这个就是构造一个Cupboard 的对象,保存在对象变量s中!
      

  3.   

    JAVA 爱好者加群  38236097
    JAVA 爱好者加群  38236097
      

  4.   

    就是要不要对它引用.如果你不引用这个新对象,或者在构造里会指明用什么引用它,当然可以直接写new Cupboad();
      

  5.   

    Cupboard s=new Cupboard();申明了个Cupboard类型的变量名字是S,等号把new出来新的Cupboard对象的内存地址赋给了s不知道我这样理解对不