栈堆是这样:
如下代码:
Person p = new Person();//这里创建了人的对象
Person p //Person 是一个类型,p 是对象名,和 int i 是一样的,区别是类型不一样,Person 是引用类型,而int 是基本类型。
那么,这个Person 是在保存在栈内存中的。
再看new Person ,这里的代码是创建一个对象,你要记住凡是用new 关键字创建的对象 ,都是保存在堆内存中的。就是在对内存开辟了一块空间,既然是空间,肯定有地址,而这个地址是由计算机自动给的,暂时不用去管,以后就是把这个地址传给在栈内存中的p 。
实在不懂加我QQ:1443512724
|