zoukankan      html  css  js  c++  java
  • 随笔37 JVM内存

    JVM 内存模型图

    方法区域存放了所加载的类的信息(名称、修饰符等)、类中的静态变量、类中定义为final类型的常量、类中的Field信息、类中的方法信息,当开发人员在程序中通过Class对象中的getName、isInterface等方法来获取信息时,这些数据都来源于方法区域,同时方法区域也是全局共享的,在一定的条件下它也会被GC,当方法区域需要使用的内存超过其允许的大小时,会抛出OutOfMemory的错误信息。

    Java  运行时数据区可以分成 方法区、 堆、 栈、 程序计数器、 本地方法栈

    堆:Java 对象, 线程之间共享的

    栈:方法运行,每一个方法对应一个栈帧,每一个线程对应一个栈,每个栈帧包括操作数、局部变量表、指向运行时常量池的引用,方法返回地址、附加位区,所以是线程不共享的。

    方法区(静态区):被虚拟机加载的类信息、,常量静态(static)变量(final),即时编译器编译后的代码等数据。运行常量池是方法区的一部分,class文件除了有类的版本、字段、接口、方法等描述信息之外,还有一项信息常量池保存编译期生成的字面量和符号引用。 线程之间共享的

    程序计数器:指出某一个时候执行某一个指令、执行完毕之后要返回的位置,当执行的Java方法的时候,这里保存的当前执行的地址,如果执行的是本地方法的时候,那么程序计数器为空。线程不共享。

     

  • 相关阅读:
    android之Activity回传数据
    Android之Activity启动模式
    桥接模式
    Android之Activity跳转
    Android多线程文件下载
    代理模式
    适配器模式
    vs2010 入门程序
    文件动态打开获取数据
    项目测试一 批量读取数据到数组
  • 原文地址:https://www.cnblogs.com/lyr612556/p/7838261.html
Copyright © 2011-2022 走看看