一个Java程序运行,占用的内存分为哪几部分?直接内存怎么申请?


  1. 1、java中的内存被分成以下四部分:

       ①、代码区  ②、栈区  ③、堆区   ④、静态区域

    2、栈区:由编译器自动分配释放,存放函数的参数值、局部变量的值等;具体方法执行结束后,系统自动释放JVM内存资源

    3、堆区:一般由程序员分配释放,存放new分配的对象和数组,JVM不定时查看这个对象,如果没有引用指向这个对象就回收

  2. 4、静态区:存放全局变量、静态变量和字符串常量,不释放

  3. 5、代码区:存放程序中方法的二进制代码,而且是多个对象共享一个代码空间区域。

  4. 分配 :程序员需要通过关键字new 为每个对象申请内存空间 (基本类型除外),所有的对象都在堆 (Heap)中分配空间。



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM