值得收藏!教你如何在IDEA中快速查看Java字节码

一、javap的参数

-help  --help  -?        输出此用法消息
  -version                 版本信息
  -v  -verbose             输出附加信息
  -l                       输出行号和本地变量表
  -public                  仅显示公共类和成员
  -protected               显示受保护的/公共类和成员
  -package                 显示程序包/受保护的/公共类和成员 (默认)
  -p  -private             显示所有类和成员
  -c                       对代码进行反汇编
  -s                       输出内部类型签名
  -sysinfo                 显示正在处理的类的系统信息 (路径, 大小, 日期, MD5 散列)
  -constants               显示静态最终常量
  -classpath <path>        指定查找用户类文件的位置
  -bootclasspath <path>    覆盖引导类文件的位置

因为我们知道java文件进入虚拟机的一个大致过程是:

A.java文件,经过编译后,生成.class文件,这个.class文件是个二进制文件,你没法看得懂,只有虚拟机能看得明白,因为虚拟机有一个字节码表,而作为程序员是看不懂这些16进制的文件的,你这可以背下来???

因为我这里用到的是Notepad++,需要安装一个HEX-Editor插件;下面的东西我只知道一个ca fe ba be.....

所以class文件就长这个样子,那么这些什么00 07,这些16进制的表示,对应代表着什么呢?这个以后再说,总之你目前看不懂就是了

那么java提供了可以解析class文件称为字节码文件的工具,把这个class文件,翻译成字节码文件,告诉虚拟机你要去做什么操作。

所以javap的命令,就是这样来的。java parser!!

二、配置IDEA

然后+号,这三行照写下

  • $JDKPath$\bin\javap.exe
  • -verbose -p -c $FileClass$
  • $OutputPath$

然后OK点击。

这样就能看到编译的细节了。

到此这篇关于值得收藏!教你如何在IDEA中快速查看Java字节码的文章就介绍到这了,更多相关IDEA中查看Java字节码内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • IDEA使用GsonFormat完成JSON和JavaBean之间的转换

    最近一直在对接接口,上游返回的都是 JSON 数据,我们需要将这些数据进行保存,我们可以解析成 Map 通过 key 的方式进行获取,然后 set 到实体类对象中,说到这里我开始想吐了,这样就造成了代码过多,没有可读性,如果有100个值,要 get 100次, set 100次吗? 所以最简单的方式是封装成对象,通过对象操作工具进行对象中属性值的映射,但是封装对象过程又繁琐了,属性过多极大的浪费时间,记得初中历史学过的一段话,人和动物最根本的区别就是会不会制造和使用工具,大神和菜鸟之间的差距也莫

  • 新手小白学JAVA IDEA下载使用手册全集

    IDEA 新手使用手册 1 简介 IDEA的全称是IntelliJ IDEA,这是一个java编程语言开发的集成环境. IDEA的每一个方面都是为了最大限度地提高开发人员的工作效率而设计的,它的智能编码辅助和人机工程学设计会让开发过程变得愉悦且高效. IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主.它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等.免费版只支持Java,Kotlin等少数语言. Intell

  • Java黑科技之通过Google Java Style 文件配置IDEA和Ecplise代码风格

    一.引言 每一个公司,团队的代码风格可能都不一样,只要团队内有自己统一的风格就好.接下来,介绍Google Java 代码风格,并且如何在IDEA和Ecplise两种比较流行的Java集成开发环境中配置Google Java 代码风格. 如果不看google代码风格详细介绍的,可以下拉到最后查看 IDEA 和 Ecplise 配置 Google Java Style 教程和 Google Java Style 文件下载. 二.Google Java Style 介绍 2.1 源文件基础 文件名

  • intellij idea设置统一JavaDoc模板的方法详解

    idea设置统一JavaDoc模板 设置普通注释 按照如下导航找到位置: Setting > Editor > File and Code Templates > Includes > File Header 复制如下,即可实现简单的JavaDoc注释 /** * @author : ChenLiWu * @date : ${DATE} ${TIME} */ 自定义模板 方法注释 按照如下导航找到位置: Setting > Editor > Live Templates

  • JAVA IDEA入门使用手册(新手小白必备)

    1 简介 IDEA的全称是IntelliJ IDEA,这是一个java编程语言开发的集成环境. IDEA的每一个方面都是为了最大限度地提高开发人员的工作效率而设计的,它的智能编码辅助和人机工程学设计会让开发过程变得愉悦且高效. IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主.它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等.免费版只支持Java,Kotlin等少数语言. IntelliJ在业界被公认为最好的

  • 关于idea中Java Web项目的访问路径问题

    说明 这里只以 servlet 为例,没有涉及到框架,但其实路径的基本原理和框架的关系不大,所以学了框架的同学如果对路径有疑惑的也可以阅读此文 项目结构 在 idea 中新建一个 Java Web 项目,项目的初始结构如下 ( 不同版本的 idea 可能略有区别 ) : 默认访问路径 当我们将项目的基本配置设置好后,启动 Tomcat,会发现直接出现的是 index.jsp 页面,此时浏览器的地址栏显示的是:localhost:8080,也就是说项目默认跳转到了 index.jsp 页面,而且打

  • IDEA中使用jclasslib插件可视化方式查看类字节码的过程详解

    说明 在学习jvm相关知识时,一般会讲到类字节码相关内容,为了更清晰的了解类字码具体内容,一般我们会使用javap命令进行查看,但是仍然不够直观,有没有更易于理解的方式查看类字节码呢?答案是有的,就是今天本文要给大家介绍的IDEA插件jclasslib Bytecode Viewer. 插件官方地址:https://plugins.jetbrains.com/plugin/9248-jclasslib-bytecode-viewer 插件安装 在idea插件功能中搜索jclasslib,选择jc

  • IDEA中WebService生成Java代码并调用外部接口实现代码

    最近一个Spring项目中需要调用其他第三方系统的接口对接数据,对方只给了一个wsdl地址,我们需要根据给的wsdl地址,自己来生成里边的接口等调用接口所需要的类,来调用接口实现数据获取,进行自己的业务处理. 通过wsdl文件生成java代码 我们根据wsdl地址生成所需接口的代码,方式很多.可以用jdk自带的wsimport,我是用的idea开发工具生成的. 根据对方提供的地址,在浏览器中输入能调用得到xml格式文件,证明对方服务开启并能访问,然后右键网页保存xml文件,修改后缀名为wsdl.

  • Java基于IDEA实现http编程的示例代码

    http开发前言之为什么要有应用层 我们已经学过TCP/IP , 已经知道目前数据能从客户端进程经过路径选择跨网络传送到服务器端进程 [ IP+Port ],可是,仅仅把数据从A点传送到B点就完了吗?这就好比,在淘宝上买了一部手机,卖家[ 客户端 ]把手机通过顺丰[ 传送+路径选择 ] 送到买家 [ 服务器 ] 手里就完了吗?当然不是,买家还要使用这款产品,还要在使用之后,给卖家打分评论.所以,我们把数据从A端传送到B端, TCP/IP 解决的是顺丰的功能,而两端还要对数据进行加工处理或者使用,

  • 使用Intellij IDEA查看Java源码技巧

    1 查看接口的实现类:Ctrl+Alt+B 选中按快捷键,然后跳到实现类的地方去 2 返回上/下个光标地方:Alt+<- 和 Alt+-> 可通过修改快捷键(搜关键字left.right)找到对应并改为 Ctrl+J.... 3 查看Java方法调用树(被调/主调):Ctrl+Alt+H 分为调用当前方法的树.当前方法调用的下级方法 4 查看表达式.变量.方法参数的传递关系:主菜单中选择Analyze | Dataflow from/to Here ....不好用 5 查看类继承关系图:Ctr

  • Java连接MySQL8.0 JDBC的详细步骤(IDEA版本)

    一.导入jar包 1.下载jar包:https://dev.mysql.com/downloads/ 2.导入 在项目文件夹下新建一个名为lib的文件夹 将下载好的jar包放入lib文件夹,然后右击lib文件夹,选择Add as Library...,然后点击ok 二.代码部分 1.加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); 2.用户信息和url String url = "jdbc:mysql://localhost:33

随机推荐