8
A
回答
18
你可以認爲它一如既往在堆上。
我相信一些智能虛擬機能夠堆棧分配對象,如果他們能夠檢測到它是安全的 - 但從概念上說它在堆上。特別是,所有數組類型都是引用類型(即使元素類型是原始類型),所以array
變量(位於堆棧上)僅僅是對對象的引用,並且對象通常位於堆上。
特別是,設想一個小的變化:
byte[] someMethod() {
byte[] array = { 0, 0 };
return array;
}
如果數組是在棧上分配的,你會返回的引用都指什麼?
1
它將被存儲在堆中
相關問題
- 1. 重新初始化堆棧
- 2. 初始化堆棧指針
- 3. WebAssembly堆棧/堆棧指針初始化和內存佈局
- 4. 初始化一個空的堆棧
- 5. 初始化可以找到最小數量的堆棧。 Java
- 6. 在ATtiny2313上初始化堆棧指針
- 7. 未初始化值由堆棧分配
- 8. 未初始化的堆和堆棧空間值
- 9. 堆棧或堆
- 10. Java堆棧組件
- 11. 字符堆棧,字符串堆棧,整數堆棧,整數數組堆棧等
- 12. 未初始化的值是由堆棧分配創建的
- 13. 是在java中堆棧或堆中分配的數組的內存?
- 14. 這是可接受的練習初始化堆上的數組?
- 15. Java - 堆棧 - 檢查堆棧的兩個數字是否相等100
- 16. Java堆棧/巢數
- 17. 堆棧進出
- 18. getaddrinfo addrinfo導致堆棧或堆棧
- 19. 堆棧或堆棧分配不正確
- 20. C++ googlemocks:獲取未初始化的調用的堆棧跟蹤
- 21. 如何確定內存是否屬於堆或堆棧?
- 22. Java堆轉儲是否包含線程堆棧
- 23. 如何防止初始化數組時過度使用程序堆棧內存?
- 24. Bitnami堆棧是否有效?
- 25. 是否Zend_Db_Adapter :: beginTransaction()堆棧?
- 26. 錯誤:longjmp導致未初始化的堆棧幀
- 27. C++堆棧:未初始化的局部變量
- 28. 如何找到未初始化的堆棧變量
- 29. 問題初始化C中的雙重堆棧鏈接列表
- 30. 堆棧的數組實現