1、如只写 Object obj; 是不牵扯堆的,只会在栈内分配内存;2、new一个对象的时候,如 new Object(); ,对象会存放在堆内;3、若写成 Object obj=new Object(); 则会把堆中的对象首地址赋值给obj变量,调用对象的方法时可以用obj来调用,实际上调用就是obj指向的对象的方法