Java中创建对象的内存图

Posted ssc在路上

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中创建对象的内存图相关的知识,希望对你有一定的参考价值。

  所有人都知道面向对象思想,Java中的对象的创建在内存中是如何创建的,传智播客的视频看了一遍,把一些讲解的比较清晰的内容记录下来,方便记忆的更加深刻,Java中创建对象的过程,首先要理解JVM中栈、堆、方法区的空间,以及在这三个空间内,虚拟机都进行什么操作,这样就会理解起来容易一些,其实Java是在C语言的基础上发展起来的,很多的内容是借鉴C语言的。

以下分别是创建一个对象、两个对象、以及三个对象的内存图解,讲的比较详细,而且比较生动,很好理解:

(方法调用是在栈中进行的,当方法调用完成之后,会立即销毁的,栈中存放是有先进后出的原则的,应该是从下往上进行存储的,栈中存放方法名,以及堆中创建对象的内存地址,通过内存地址,进行对象属性的调用以及赋值,对象方法是存放在方法区的,同样是通过内存地址进行调用的,而且同一类对象共用一个方法区

一、一个对象的创建在内存中的图解

二、两个对象的创建在内存中的图解

三、三个对象的创建在内存中的图解

(一个对象赋值给另一个对象,其实在内存中的表现就是指向对象在堆中位置)

以上是关于Java中创建对象的内存图的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Java 中创建内存泄漏?

如何在 Java 中创建内存泄漏?

java中创建对象 类名 对象名=new 类名(); 后面的()什么意思

Python Django:在内存中创建文件对象而不实际创建文件

javaJava 创建的对象到底放在哪?垃圾回收

Java中创建对象的5种方法