文档章节

Java 程序执行内存分析

涂涂tutu
 涂涂tutu
发布于 2017/07/25 10:36
字数 353
阅读 18
收藏 0

工作两年了很少看源码,最近开始研究Java底层源码,深入了解Java,所以就把自己了解的共享出来,欢迎大家指正,接受批评。

  Java代码运行时,内存分为两块:栈和堆:

  ”栈“存放局部变量,自动分配连续空间,后进先出。

      ”堆“存放new出来的对象(对象属性),而”堆“分配的空间是不连续的。

     ”堆“里面又开辟出来一块空间为”方法区(也是堆)“,方法区存放类的代码信息,静态变量,常量池。  看图:

栈里面存放的是new出来对象的名字(p,p2),两个名字保存的是对象在堆里面具体存放的地址,每new出来一个对象在堆里面都会为对像创造一个模板(id,name,age,hello),对象的属性保存的是方法区里面代码,常量池,静态变量的地址,方法区里面保存的是整个类的具体信息,同一个对象不管new出来多少,方法区里面的对象具体信息只有一个,每new出来一个对象都会在方法区寻找对象具体信息是否已经存在,如果存在直接调用,没存在就生成.

新手第一次发布,请指正。

© 著作权归作者所有

共有 人打赏支持
涂涂tutu
粉丝 0
博文 8
码字总数 2060
作品 0
程序员
常用Java性能测试工具的分析与对比

虽然市场上的 Java Profiler 工具有不少,但是基本功能大多相似,本节首先对这些基本功能进行介绍。 遥测(Telemetry):遥测是一种用来查看应用程序运行行为的最简单的方法。通常会有多个视...

lanmeimei
2014/03/18
0
0
Java执行Runtime.exec(shell)报Cannot allocate memory

在Linux下用java的Runtime.getRuntime().exec(cmd)方式,执行shell脚本时,遇到“Cannot allocate memory”的错误。 网上查询资料整理如下: Cannot allocate memory 在Linux上调试一个比较复...

山哥
2014/06/05
0
0
java虚拟机中常见名词概念-深入理解jvm

一:java虚拟机的体系结构图: jvm :中文名称叫Java虚拟机,它是由软件技术模拟出计算机运行的一个虚拟的计算机。我们都知道Java的程序需要经过编译后,产生.Class文件,JVM才能识别并运行它...

Swen_9826
08/08
0
0
成为Java GC专家(5)—Java性能调优原则

这是“成为Java GC专家”系列的第五篇文章。在第一篇深入浅出Java垃圾回收机制中,我们已经学习了不同的GC算法流程、GC的工作原理、新生代(Young Generation)和老年代(Old Generation)的...

stefanzhlg
2014/12/05
0
1
java内存分配和String类型的深度解析

一、引题 在java语言的所有数据类型中,String类型是比较特殊的一种类型,同时也是面试的时候经常被问到的一个知识点,本文结合java内存分配深度分析关于String的许多令人迷惑的问题。下面是...

萧十一郎君
2013/10/19
0
30

没有更多内容

加载失败,请刷新页面

加载更多

搬瓦工镜像站bwh1.net被DNS污染,国内打不开搬瓦工官网

今天下午(2018年10月17日),继搬瓦工主域名bandwagonhost.com被污染后,这个国内的镜像地址bwh1.net也被墙了。那么目前应该怎么访问搬瓦工官网呢? 消息来源:搬瓦工优惠网->搬瓦工镜像站b...

flyzy2005
25分钟前
1
0
SpringBoot自动配置

本篇介绍下,如何通过springboot的自动配置,将公司项目内的依赖jar,不需要扫描路径,依赖jar的情况下,就能将jar内配置了@configuration注解的类,创建到IOC里面 介绍下开发环境 JDK版本1.8 spr...

贺小五
今天
3
0
命令行新建Maven多项目

参考地址 # DgroupId 可以理解为包名# DartifactId 可以理解为项目名mvn archetype:generate -DgroupId=cn.modfun -DartifactId=scaffold -DarchetypeArtifactId=maven-archetype-quickst......

阿白
今天
1
0
OSChina 周四乱弹 —— 上帝对我单身年限的惩罚越来越长了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @达尔文:分享张卫健的单曲《身体健康》 《身体健康》- 张卫健 手机党少年们想听歌,请使劲儿戳(这里) 昨天是重阳节咯, 可惜小小编辑总是晚...

小小编辑
今天
12
1
django rest framework 外键序列化方法与问题总结

django rest framework 外键序列化方法与问题总结 当借口中需要出现一对多关系的时候,我们可以用rest_framwork的序列化功能来处理,代码如下. # models.pyfrom django.db import modelscl...

_Change_
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部