当前位置: 首页 > wzjs >正文

南宁网站建设超博网络学雷锋 做美德少年网站

南宁网站建设超博网络,学雷锋 做美德少年网站,注册城乡规划师培训机构哪个好,wordpress打开速度慢 插件1. 什么是方法区方法区是Java虚拟机(JVM)内存结构中的一个重要组成部分,主要用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。主要特点共享内存区域:所有线程共享方法区逻辑部分:是Ja…

 

1. 什么是方法区

方法区是Java虚拟机(JVM)内存结构中的一个重要组成部分,主要用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。

主要特点

  1. 共享内存区域:所有线程共享方法区

  2. 逻辑部分:是Java堆的逻辑组成部分

  3. 规范描述:在JVM规范中属于堆的一个逻辑部分,但习惯上被称为"非堆"(Non-Heap)

 

 发展与演进

  • 永久代(PermGen):在JDK7及之前,虚拟机用永久代来实现方法区。

  • 元空间(Metaspace)(方法区):从JDK8开始,永久代被移除,改用本地内存实现的元空间(方法区)。

存储内容 

方法区主要存储:

  • 类信息(Class元数据)

  • 运行时常量池

  • 静态变量

  • 即时编译器编译后的代码(JIT编译的本地代码)

  • 方法代码


2.  元空间的常量池

常量池(Constant Pool)是 Java 类文件(.class 文件)和 JVM 运行时内存中的一个重要数据结构,用于存储类、方法、字段等相关的符号引用和字面量。

它分为两种:

  1. Class 文件常量池(静态常量池,编译期生成)

  2. 运行时常量池(Runtime Constant Pool,JVM 运行时使用)

常量池 可以看作是一张表,虚拟机指令根据这张常量表找到要执行的类名、方法名、参数类型、字面量等信息 。 

可以使用下面的指令查看字节码结构(类的基本信息、常量池、方法定义):

javap -vApplication.class

例如下图: 


Class 文件常量池(静态常量池)

在 .class 文件中,常量池存储了类、方法、字段等的符号引用字面量,主要包括:

  • 字面量(Literals)

    • 字符串(如 "Hello"

    • 整数、浮点数(如 1003.14

    • 布尔值(true/false

    • null

  • 符号引用(Symbolic References)

    • 类和接口的全限定名(如 java/lang/Object

    • 字段的名称和描述符(如 name:Ljava/lang/String;

    • 方法的名称和描述符(如 main:([Ljava/lang/String;)V

特点

  • 编译期生成,存储在 .class 文件中

  • 不占用 JVM 内存,仅用于类加载时的解析


运行时常量池(Runtime Constant Pool)

当 JVM 加载类时,会将 Class 文件常量池的内容解析并存储到 方法区(元空间) 中的运行时常量池。它包含:

  • 解析后的直接引用(如方法、字段的内存地址)

  • 动态生成的常量(如 String.intern() 的字符串)

  • JVM 运行时的符号引用解析结果

特点

  • 存储在 方法区(JDK 8 后是元空间)

  • 可以动态添加(如 String.intern()

  • 如果内存不足,会抛出 OutOfMemoryError


3. 总结 

3.1 什么是方法区?

  • 方法区(Method Area)是各个线程共享的内存区域
  • 主要存储类的信息、运行时常量池
  • 虚拟机启动的时候创建,关闭虚拟机时释放
  • 如果方法区域中的内存无法满足分配请求,则会抛出OutOfMemoryError:Metaspace

3.2 介绍一下运行时常量池

  • 常量池:可以看作是一张表,虚拟机指令根据这张常量表找到要执行的类名方法名、参数类型、字面量等信息
  • 当类被加载,它的常量池信息就会放入运行时常量池,并把里面的符号地址变为真实地址

上一篇            下一篇


文章转载自:

http://oqZ9n4FD.mrbzq.cn
http://IUbEVSwC.mrbzq.cn
http://Cv0TcAri.mrbzq.cn
http://gaMrVyQr.mrbzq.cn
http://X1bfSP8E.mrbzq.cn
http://EUkIhZwQ.mrbzq.cn
http://YZQxKay4.mrbzq.cn
http://rajgov2l.mrbzq.cn
http://VRnviEvW.mrbzq.cn
http://TxOfFIEM.mrbzq.cn
http://R7DTwMcd.mrbzq.cn
http://ue8QJPNH.mrbzq.cn
http://A49qf0aN.mrbzq.cn
http://GeXNUV9H.mrbzq.cn
http://LCGbqIBx.mrbzq.cn
http://eVVVJmQv.mrbzq.cn
http://kzutfPgi.mrbzq.cn
http://kPFd0isj.mrbzq.cn
http://khO8OAlV.mrbzq.cn
http://393TTtUn.mrbzq.cn
http://K4WKJY42.mrbzq.cn
http://9fNPF1Di.mrbzq.cn
http://Fonc2MgY.mrbzq.cn
http://ekJdQiDx.mrbzq.cn
http://I84pzOGb.mrbzq.cn
http://RmZLK4Qc.mrbzq.cn
http://NCRjFctU.mrbzq.cn
http://aMdjrwHD.mrbzq.cn
http://AZm2KQUc.mrbzq.cn
http://XIeblIwK.mrbzq.cn
http://www.dtcms.com/wzjs/676953.html

相关文章:

  • 2万元建设网站贵吗谷歌seo搜索引擎
  • 寺院网站建设方案互联网行业怎么赚钱
  • 建设网站对服务器有什么要求吗网站平台搭建
  • 注册了网站之后怎么设计自驾游自由行网站建设
  • 站酷网站建设网站举报中心官网
  • 书店网站建设方案网站建设教程怎么建
  • 网站快速备案安全吗网站流量怎么变现呢
  • 成都淮洲新城建设投资有限公司网站手机排行榜2021销量排行
  • 公司给别人做的网站违法吗中国室内设计联盟app
  • 网站设计兼容模式wordpress外网访问不了
  • pc蛋蛋游戏体验网站建设做的网站图片不显示
  • 电子商务网站建设设计网站服务器放在哪里好
  • 东莞网站建设多长时间红酒企业网站模板免费下载
  • 买完域名后如何建设网站瑞诺国际的员工数量
  • 网站推广排名外包飞天云服务器
  • 做哪种网站流量上的快网站规划与建设 ppt
  • 网站服务器环境搭建做网站建设的一般在哪儿找
  • 青海建设局网站网站设计 联系
  • 深圳做网站(信科网络)办公室装修设计效果图免费
  • 专业的南京网站建设网站开发都用什么
  • 网站开发岗位简介网站建设艾瑞市场分析
  • 网站怎样绑定域名创意平面设计公司公司排名
  • 企业网站建设相关书籍在线阅读网络营销组合策略
  • 山东省住房城乡建设厅查询网站济南seo外包服务
  • 基于阿里云的网站开发佛山网站营销推广
  • 建设网站cmswordpress模板建站教程
  • 企业网站长度网站建设与运营成本
  • 网站添加悬浮二维码织梦iis7搭建网站教程
  • 周口网站建设费用注册网站时手机号格式不正确
  • 安亭网站建设哪里学网站建设推广