发布网友 发布时间:2022-04-24 05:32
共2个回答
热心网友 时间:2023-11-01 02:17
我认为是这样的,当创建一个Dog对象d时,Dog d = new Dog("Kitty",21);从数据结构上看d是个引用变量被存放在栈内存当中,而其指向一块堆内存中的数据,也就是对象Dog。d中存放的是这个新的Dog对象的地址的引用。实际上new Dog("Kitty",21)就是一块堆内存中的数据块,用d来引用。当new出多个Dog对象时,系统就会为不同的对象的成员变量分配不同的存储空间。
热心网友 时间:2023-11-01 02:17
类的对象在栈中创建,即d并且包含两个数据成员即Kitty和21。当new出一个对象时在堆中为其开辟内存,即name和age。然后将Kitty和21赋给name和age。
Stack Heap
Kitty name
21 age