Java对象在物理上驻留在哪里,无论是主内存,虚拟内存,高速缓存还是其他东西?

时间:2017-10-05 02:17:05

标签: java memory-management heap-memory dynamic-memory-allocation static-memory-allocation

当我们执行Java程序并在其中创建对象时,对象实际存储在何处?我们知道它们是以堆和堆栈的形式存储的,但问题是实际上堆栈和堆栈的物理位置,我的意思是它从哪个部分的内存中获取空间。是RAM,虚拟内存,缓存还是其他东西?

2 个答案:

答案 0 :(得分:0)

  

是RAM,虚拟内存,缓存还是其他东西?

以上任何或全部,完全取决于操作系统和硬件,而不是Java本身。

答案 1 :(得分:0)

基本上,Java虚拟机使用RAM(易失性内存(非永久性))存储值。因此,堆和堆栈都将存储在RAM中,这就是为什么在关闭系统电源时会删除数据的原因。 如果Java能够将堆和堆栈存储在系统硬盘等主内存中,那么我们就不需要数据库。

http://net-informations.com/faq/net/stack-heap.htm