Java程序开发中的简单内存分析

开发 后端
在Java开发过程中,对内存进行分析是十分重要的一步,分析好内存对以后分析逻辑性错误的程序非常重要。本文将简单谈谈如何进行简单的内存分析。

首先内存总体分为了4个部分,包括 stack segment  、heap segment、code segment 、data segment ;

其中我们程序中用关键字new出来的东西都是存放在heap segment;

程序中的局部变量存放在stack segment,这些局部变量是在具体方法执行结束之后,系统自动释放内存资源(而heap segment中的资源需要java垃圾回收机制来处理);

程序中的方法,是内存中的code segment中的,而且是多个对象 共享一个代码空间区域;

static静态变量,需要放在内存中的data segment中,

下面是一个例子程序的内存分析

     class Demo{

 private int firistNum;

 private int secondNum;

 public static int temp  =  3;

 public Demo(int firstNum,int secondNum){

            this.firstNum = firstNum; 

            this.secondNum = secondNum;

            }

      }

public class Test{

Public static void main(String [] args){

              Demo test = new Demo(3,4);     
           }

      }

下面是内存空间分配的过程

第二步执行过程

这是整个main方法执行过程中的内存空间分配,分析好内存对以后分析逻辑性错误的程序非常重要。

【编辑推荐】

  1. 浅谈如何构建Java Web快速开发框架
  2. Java编译器中对String对象的优化
  3. Java语言中抽象类和接口的区别
责任编辑:彭凡 来源: cnblogs
相关推荐

2014-07-03 09:39:34

Java内存分析mat工具

2022-07-10 20:47:39

linux中虚拟内存

2010-03-09 10:49:35

python简单应用

2009-01-12 09:49:03

Java线程多线程thread

2009-03-11 11:10:15

JavaJava开发线程

2010-01-25 14:56:08

C++程序

2018-02-24 12:17:56

C程序内存方式

2020-12-07 06:23:48

Java内存

2010-01-25 18:15:52

2021-02-28 13:22:54

Java内存代码

2015-11-16 11:22:05

Java对象内存分配

2011-08-11 09:56:50

模式

2011-07-04 10:04:52

java网络程序

2009-09-09 09:09:17

ASP.NET MVC

2020-01-03 16:04:10

Node.js内存泄漏

2018-11-20 14:48:54

2017-03-20 13:43:51

Node.js内存泄漏

2017-03-19 16:40:28

漏洞Node.js内存泄漏

2023-08-29 11:38:27

Java内存

2009-07-17 17:25:31

敏捷开发
点赞
收藏

51CTO技术栈公众号