• 永久代(jdk8以后是元空间)


    方法区被分为两个主要的子区域:

    1 持久代也就是你说的永久代,翻译不同 这个区域会存储包括类定义、结构、字段、方法(数据及代码)以及常量在内的类相关数据。它可以通过-XX:PermSize及-XX:MaxPermSize来进行调节。如果它的空间用完了,会导致java.lang.OutOfMemoryError: PermGenspace的异常。而JDK8开始,持久代已经被彻底删除了,取代它的是另一个内存区域也被称为元空间。

    2 存放数据

    方法区存储的是每个class的信息:
    1.类加载器引用(classLoader)
    2.运行时常量池
    所有常量、字段引用、方法引用、属性
    3.字段数据
    每个方法的名字、类型(如类的全路径名、类型或接口) 、修饰符(如public、abstract、final)、属性
    4.方法数据
    每个方法的名字、返回类型、参数类型(按顺序)、修饰符、属性
    5.方法代码
    每个方法的字节码、操作数栈大小、局部变量大小、局部变量表、异常表和每个异常处理的开始位置、结 束位置、代码处理在程序计数器中的偏移地址、被捕获的异常类的常量池索引

  • 相关阅读:
    eggjs 打印mysql日志!!!
    emqx ws转成wss
    华为 荣耀 Android 8.0 安装Google服务 使用google play
    angular + mqtt
    Angular路由参数传递
    Splay学习笔记
    FJOI2019 游记[大概是考完会解封?]
    地图游戏
    「Neerc2016」Expect to Wait
    [BZOJ5248][2018九省联考]一双木棋
  • 原文地址:https://www.cnblogs.com/liclBlog/p/15349489.html
Copyright © 2020-2023  润新知