java的内存分配和c#的内存分配一样吗

2024-12-05 18:54:10
推荐回答(2个)
回答1:

int noBB="sayWordsICAN undstand";
noBB存在栈里,是对堆中的对象的引用。
等号后面的就是堆中的对象。
栈和堆都是数据结构,是在内存中分配的一块空间。
C和java,还有其他语言的空间分配和管理方式可能是不一样的,虽然可能都有堆栈的概念。
java是由jvm管理堆栈,不用程序员手动释放内存。而c就要手动去释放

回答2:

C++ string 基本等于 Java StringBuff C++ const string 基本等于Java String 也就是说C++string可变而javaString不可变
O1=O2;
在C++中将一个名为O2的对象的数据复制给O1,即存在两个对象,他们的值相同。
而在Java中,这句话只是把O2对象的引用复制给了O1,此时它们指向同一个对象,即只存在一个对象。