Java字节码(一)
发布日期:2021-06-28 18:55:01
浏览次数:2
分类:技术文章
本文共 575 字,大约阅读时间需要 1 分钟。
一、什么是字节码:
Java所有的指令有200个左右,一个字节(8位)可以存储256种不同的指令信息,一个这样的字节称为字节码(Bytecode)。字节码是由类型前缀和操作名称这两部分组成。
二、java字节码文件编码过程
在了解了字节码的含义之后,那么你是否想过一个问题,我们平时编写的是java文件,JVM运行的class文件,也就是字节码。一般这个转化IDE工具帮我们完成了,或者在命令行的情况下使用Javac命令进行编译。那么在整个编译过程经过了哪些步骤呢?如下图所示:
看到这里是否感觉比较眼熟呢。这里的步骤和编译器的翻译流程基本一致。在一层上也提现了知识的贯通性。越是底层的东西越是相互借鉴,想通的。
三、根据指令性质分类
按照指令性质可以由以下几种分类:
- 栈操作指令,包括与局部变量交互的指令
- 程序流程控制指令
- 对象操作指令,包括方法调用指令
- 算术运算以及类型转换指令
四、字节码文件结构
概况起来就是
Class文件头部 |
常量池区域 |
当前类的一些描述信息 |
属性列表 |
方法列表 |
attribute列表 |
五、总结:
字节码是真正运行在JVM上的命令,本文介绍了字节码的定义,以及从java文件到字节码的生成过程。介绍了指令的属性和字节码文件的结构。对字节码有一个初步的认识。在以后分析问题的时候多了一个方式来分析就是从最底层的字节码分析。
转载地址:https://blog.csdn.net/xt00002003/article/details/114380721 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月13日 02时24分09秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Java中对象与引用
2019-04-29
JDK 1.7 Integer.parseInt 源码解析
2019-04-29
Java单例模式
2019-04-29
三种方法拆分字符串
2019-04-29
贪心算法基本思想和典型例题
2019-04-29
坑爹的小学数学题
2019-04-29
快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值
2019-04-29
[经典排序算法][集锦]
2019-04-29
无处不在的二分查找
2019-04-29
Java集合框架List,Map,Set等全面介绍
2019-04-29
Java 泛型(二) 泛型之中的通配符(Wildcards)使用
2019-04-29
7-36 复数四则运算 (15 分)
2019-04-29
L1-002 打印沙漏 (20 分)
2019-04-29
L1-003 个位数统计 (15 分)
2019-04-29
L1-005 考试座位号 (15 分)
2019-04-29
L1-006 连续因子 (20 分)
2019-04-29
L1-008 求整数段和 (10 分)
2019-04-29
L1-009 N个数求和 (20 分)
2019-04-29
用Python的turtle库画太极图
2019-04-29
L1-010 比较大小 (10 分)
2019-04-29