class aaa{
    public void a1()
    {
      System.out.println("1111");
     }
}public class bbb{       public static void main(String[]args)
         {
                 aaa a=new aaa();  使用new创建的对象
                 a.a1();
                 aaa b;        这里使用引用
                 
         }
}
请问使用new创建对象和使用应用本质上或者使用有什么不同

解决方案 »

  1.   

    感觉你是不是从c++过来的?,aaa b; 这样在c++里 b在内存中实例化了。在java里 
    b还是null.
      

  2.   

    首先bbb的类内用aaa创建了a对象,a对象调用a1方法是理所当然,然后aaa有创建了b的引用,这时候还没有分配空间,使用new分配空间,你现在只是个引用,写了等于没写,没有意义。
      

  3.   

    aaa b is a reference, not the aaa object itself , all it is saying is I have a reference point to a aaa kind of object. where is the object, no where.It is until you start to use either new or refer to another var.For Exampleaaa b;
    b = new aaa(); // create a new object
    b = a; // a address is copied to b, so both a and b point to the same object
      

  4.   

    你用aaa类创建咯b 但是没有初始化 如果使用的话 会报“没有初始化B”的错误 而且 此时b没有分配到内存空间 相当于是不存在的...
      

  5.   

    aaa a;
    此时应该是告诉编译器有aaa这样的一个对象a了吧,但系统并未为他分配任何空间。
    a=new aaa();
    系统才应该为他分配空间了
      

  6.   

    直接使用new 创建一个对象和使用对象引用的区别 ?
    使用new来创建,那么程序就会在heap上分配空间来储存它,但是当你引用的时候则不然,你可以为它分配空间也可不分配,看你需要了!分配了就是个对象,如果不分配就是null,不占用任何硬件资源。aaa a=new aaa();  使用new创建的对象
                     a.a1();-因为你实例化了一个对象所以你可以调用方法
                     aaa b;--对象根本不存在,所以你不可能用null reference操作
      

  7.   

    你这  “aaa b;        这里使用引用”
    根本不是使用,
    只是声明一个名为B的对象引用(句柄);