首页 > 编程语言 > 详细

深入理解JAVA虚拟机 虚拟机执行子系统

时间:2017-06-29 09:40:23      阅读:253      评论:0      收藏:0      [点我收藏+]

class类文件的结构

java的class类文件中存在两种结构:无符号数和表。最小的存储单元是8个字节。

无符号数是基本的数据类型,用来描述数字,UTF-8编码的字符串,索引引用。

表示多个无符号数构成的复杂数据结构。

 技术分享

其中:

  • magic 表示魔数,并且魔数占用了4个字节,魔数到底是做什么的呢?它其实就是表示一下这个文件的类型是一个Class文件,而不是一张JPG图片,或者AVI的电影。而Class文件对应的魔数是0xCAFEBABE.
  • minor_version 表示Class文件的次版本号。
  • major_version 表示Class文件的主版本号。
  • constant_pool 常量池 主要存储字面量和符号引用。其中字面量包含static字符串,static final常量等。符号引用包含类或者接口的全限定名、字段和方法的名称和描述符等。

还有各种描述类的信息,如:实现的接口列表,超类,方法列表,属性列表等。

一定程度上说,class文件中存储的信息在被加载后,大部分都是存放在方法区的。

深入理解JAVA虚拟机 虚拟机执行子系统

原文:http://www.cnblogs.com/xiaolang8762400/p/7092600.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!