一、Java的class文件的内容

1.首先编写一个简单的代码

public class StringDemo {

public static void main(String[] args) {String s=new String("hello world");System.out.println(s);}

}

2.运行程序编译成class文件,class文件的查看可以用Java class文件分析工具 – Classpy

3.这种字节码文件我们肯定看不懂,所以我们可以通过指令Javap来转换成我们人类可以看懂的

4.打开StringDemo.txt文件,即下图的内容

public class com.dada.demo.controller.StringDemo

minor version: 0

major version: 52

flags: ACC_PUBLIC, ACC_SUPER

Constant pool:

#1 = Methodref #8.#24 // java/lang/Object.“”

Java虚拟机如何运行Java字节码?相关推荐

  1. 【Java 虚拟机原理】Class 字节码二进制文件分析 七 ( 局部变量表分析 )

    文章目录 前言 一.编译生成带局部变量表的字节码文件 二.局部变量表 前言 上一篇博客 [Java 虚拟机原理]Class 字节码二进制文件分析 二 ( 常量池位置 | 常量池结构 | tag | i ...

  2. 【Java 虚拟机原理】Class 字节码二进制文件分析 六 ( 属性类型 | Code 属性 | 属性名称索引 | 属性长度 | 操作数栈最大深度 | 局部变量存储空间 | 字节码长度 )

    文章目录 前言 一.属性类型 二.Code 属性表数据结构 三.属性名称索引 四.属性长度 五.操作数栈最大深度 六.局部变量存储空间 七.字节码长度 八.存储字节码指令的一系列字节流 前言 上一篇博 ...

  3. 【Java 虚拟机原理】Class 字节码二进制文件分析 五 ( 方法计数器 | 方法表 | 访问标志 | 方法名称索引 | 方法返回值类型 | 方法属性数量 | 方法属性表 )

    文章目录 前言 一.方法表结构 二.方法计数器 三.方法表数据解析 ( init 构造方法 ) 1.方法访问标志 2.方法名称索引 3.方法返回类型 4.方法属性数量 前言 上一篇博客 [Java 虚 ...

  4. 【Java 虚拟机原理】Class 字节码二进制文件分析 四 ( 字段表数据结构 | 字段表详细分析 | 访问标志 | 字段名称 | 字段描述符 | 属性项目 )

    文章目录 前言 一.字段表总数据结构 二.访问标志 三.字段名称 四.字段描述符 五.属性项目数 前言 上一篇博客 [Java 虚拟机原理]Class 字节码二进制文件分析 三 ( 访问和修饰标志 | ...

  5. 【Java 虚拟机原理】Class 字节码二进制文件分析 三 ( 访问和修饰标志 | 类索引 | 父类索引 | 接口计数器 | 接口表 | 字段计数器 | 字段表 )

    文章目录 前言 一.访问和修饰标志 二.类索引 三.父类索引 四.接口计数器 五.接口表 六.字段计数器 七.字段表 前言 上一篇博客 [Java 虚拟机原理]Class 字节码二进制文件分析 二 ( ...

  6. 【Java 虚拟机原理】Class 字节码二进制文件分析 二 ( 常量池位置 | 常量池结构 | tag | info[] | 完整分析字节码文件中的常量池二进制数据 )

    文章目录 前言 一.常量池结构分析 1.常量池位置 2.常量池结构 3.常量池单个常量 4.常量池单个常量 tag 标签 二.常量池字节码文件分析 0.常量池附加信息 1.常量池 #1 常量分析 2. ...

  7. 【Java 虚拟机原理】动态字节码技术 | Dalvik ART 虚拟机 | Android 字节码打包过程

    文章目录 一.动态字节码技术 二.Dalvik & ART 虚拟机 三.Android 字节码打包过程 总结 一.动态字节码技术 动态字节码技术 就是在 运行时 , 动态修改 Class 字节 ...

  8. Java虚拟机如何运行Java字节码

    先来说下虚拟机的类型,常见的虚拟机分三种: 1.HotSpot 2. JRockit 3.IBM的jvma 标准JDK中的HotSpot是如何运行Java字节码的呢? 需要从两个角度考虑: 虚拟机角度 ...

  9. 【Java 虚拟机原理】Class 字节码二进制文件分析 一 ( 字节码文件附加信息 | 魔数 | 次版本号 | 主版本号 | 常量池个数 )

    文章目录 一.字节码文件 与 JVM 二.字节码文件示例 三.字节码文件二进制结构分析 1.魔数 2.次版本号 3.主版本号 4.常量池个数 一.字节码文件 与 JVM Java 源码编译成 Clas ...

  10. JAVA 虚拟机类加载机制和字节码执行引擎

    引言 我们知道java代码编译后生成的是字节码,那虚拟机是如何加载这些class字节码文件的呢?加载之后又是如何进行方法调用的呢? 一 类文件结构 无关性基石 java有一个口号叫做一次编写,到处运行 ...

最新文章

  1. 如何获取js对象的对象名
  2. git 回退版本并强制提交
  3. 基于Seam+Carving和显著性分析的图像缩放方法MATLAB仿真
  4. .net 流(Stream) - 文件流、内存流、网络流
  5. C#比较dynamic和Dictionary性能
  6. Linux unzip命令:解压zip文件
  7. 信安教程第二版-第19章操作系统安全保护
  8. 【译】Asp.Net 导出 Excel 数据的9种方案
  9. 理解类级别的访问控制权限——类的成员函数可以访问该类所有对象的私有成员
  10. Atom飞行手册翻译: 2.1 Atom中的包
  11. 转:android学习帖子大汇集
  12. Web自动化测试框架-PO模式
  13. 学计算机到35岁后转行容易吗,本人已经35岁了,转行学IT风险是不是很大?
  14. Windows系统访问网络共享文件夹提示没有权限访问网络资源,登录失败:未授予用户XXX等--终极必杀技
  15. HTML表单练习~百度注册
  16. 空间几何-欧拉角、四元数、重投影误差
  17. 探讨位操作、算术右移、逻辑右移
  18. 计算机关机键消失了,电脑关机按钮不见怎么办 电脑关机图标不见解决办法
  19. sql多维度组合排序
  20. 【定时任务】Spring Boot 定时执行任务详解,每天定时几点钟执行任务

热门文章

  1. 行业内口碑好值得信赖的短网址,让你不再选择恐惧
  2. Unity 水体效果模拟
  3. 文史 篇一:《万历十五年》--黄仁宇
  4. php开发使用predis(thinkphp框架,composer,windows环境练习)
  5. 周鸿伟鸿蒙系统,周鸿袆正式宣布!鸿蒙系统开源比较好,将全力支持华为新系统...
  6. JAVA 正则表达式 (超详细)
  7. 学习数据分析、数据挖掘、大数据ETL工程师到什么程度可以找工作?
  8. 那是计算机房吗不他不是用英语怎么说,他有一个录音棚。,He has a recording studio.,音标,读音,翻译,英文例句,英语词典...
  9. Banner小组年会总结
  10. Animation动画效果的实现