zoukankan      html  css  js  c++  java
  • 简单认识JAVA内存划分

    Java的内存划分为五个部分


    那么又是哪五个部分呢?跟着我往下看!


    介绍
    每个程序运行都需要内存空间,所以Java也不例外;而Java把从计算机中申请的这一块内存又进行了划分!而所在目的是为了让程序更好的运行和处理!


    第一块:

    第一部分

    “栈” ——(stack)

    1.它存放的是方法中的局部变量。

    2.而这个 “局部变量” 又指的是方法的参数,或者是大括号{}内部的变量。

    3.而这个 “局部变量” 有个特点 就是 “作用域” 。

    4.一旦超出“作用域”(大括号),立刻从栈内存当中消失。

    5.方法的执行一定要在栈当中。


    第二块:

    第二部分

    “堆”——Heap

    1.凡是 new 出来的东西,都在堆当中。

    2.堆内存里面的东西都有一个地址值:16进制的一个值。

    3.而且堆内存里面的数据,都有默认值,规则:

    如果是整数——默认为 0;

    如果是浮点数——默认为 0.0;

    如果是字符型——默认为 ‘u0000’;

    如果是布尔类——默认为 false;

    如果是引用类型——默认为 null;


    第三块:

    第三部分

    “方法区”——Method Area

    1.存储 .class 相关信息,包含方法的信息


    第四块

    第四部分

    “本地方法栈”——Native Method Stack

    1.是和操作系统相关的内容。


    第五块

    第五部分

    “寄存器”——pc Register

    1.与CPU 有关


    无论人生上到哪一层台阶,阶下有人在仰望你,阶上亦有人在俯视你。你抬头自卑,低头自得,唯有平视,才能看见真实的自己
  • 相关阅读:
    linux下vim配置以及一些常用的快捷键
    linux下java环境配置
    编译原理实习(应用预测分析法LL(1)实现语法分析)
    hdu 1063(java写高精度)
    loj 1271
    loj 1379(最短路变形)
    hdu 4114(状压dp)
    loj 1002(spfa变形)
    python生产者消费者模型
    python创建一个线程和一个线程池
  • 原文地址:https://www.cnblogs.com/yuyueq/p/13268027.html
Copyright © 2011-2022 走看看