IDEA中使用jclasslib插件可视化方式查看类字节码的过程详解
说明
在学习jvm相关知识时,一般会讲到类字节码相关内容,为了更清晰的了解类字码具体内容,一般我们会使用javap
命令进行查看,但是仍然不够直观,有没有更易于理解的方式查看类字节码呢?答案是有的,就是今天本文要给大家介绍的IDEA插件jclasslib Bytecode Viewer。
插件官方地址:https://plugins.jetbrains.com/plugin/9248-jclasslib-bytecode-viewer
插件安装
在idea插件功能中搜索jclasslib,选择jclasslib Bytecode Viewer,安装即可,如图
编写测试类
编写测试类,包含属性、方法、字符串常量等。
package com.lcl; /** * @author lcl * @date 2021-04-22 */ public class ClassViewer { private String field; public void method(){ System.out.println("method ..."); } }
注意:需要编译此类,否则会报错。若是idea没有自动编译,请使用Build Project功能进行编译
使用效果
点击菜单:View -> Show Bytecode With Jclasslib
效果如图:
可以看到,清晰明了的显示出了类字节相关信息。是不是很棒!!!
以上就是IDEA中使用jclasslib插件可视化方式查看类字节码的详细内容,更多关于idea jclasslib字节码查看的资料请关注我们其它相关文章!
相关推荐
-
IDEA利用jclasslib 修改class文件的实现
idea安装jclasslib-bytecode-viewer插件 file–>settings–>plugis ,搜索安装jclasslib-bytecode-viewer,重启idea. 准备好class文件 把要修改的class文件用idea打开. 使用jclasslib view–>show bytecode with jclasslib. 常量池,使用过滤器过滤文本.找到对应的指向数字. 使用下列代码更改内容. package com.yys.screendisplay.con
-
IDEA中使用jclasslib插件可视化方式查看类字节码的过程详解
说明 在学习jvm相关知识时,一般会讲到类字节码相关内容,为了更清晰的了解类字码具体内容,一般我们会使用javap命令进行查看,但是仍然不够直观,有没有更易于理解的方式查看类字节码呢?答案是有的,就是今天本文要给大家介绍的IDEA插件jclasslib Bytecode Viewer. 插件官方地址:https://plugins.jetbrains.com/plugin/9248-jclasslib-bytecode-viewer 插件安装 在idea插件功能中搜索jclasslib,选择jc
-
IDEA神器一键查看Java字节码及其他类信息插件
开始推荐 IDEA 字节码查看神器之前,先来回顾一下 Java 字节码是啥. 何为 Java 字节码? Java 虚拟机(JVM)是运行 Java 字节码的虚拟机.JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果. 什么是字节码?采用字节码的好处是什么? 在 Java 中,JVM 可以理解的代码就叫做字节码的文件),它不面向任何特定的处理器,只面向虚拟机.Java 语言通过字节码的方式,在一定程度上解决了传统解释型语言执行
-
值得收藏!教你如何在IDEA中快速查看Java字节码
一.javap的参数 -help --help -? 输出此用法消息 -version 版本信息 -v -verbose 输出附加信息 -l 输出行号和本地变量表 -public 仅显示公共类和成员 -protected 显示受保护的/公共类和成员 -package
-
C#中应用程序集的装载过程详解
了解程序集如何在C#.NET中加载 我们一直在处理库和NuGet软件包.不管是好是坏,高级.NET开发人员都需要了解.NET运行时如何加载程序集. 这些库依赖于其他流行的库,并且有很多共享的依赖项.有了足够大的依赖关系网络,您最终将陷入冲突或困境.处理此类问题的最佳方法是了解该机制在内部的工作方式. 在本文中,您将看到.NET进程如何以及何时加载引用的程序集. 您将了解加载了哪个库版本,当有多个可用版本时会发生什么,以及为什么有时由于版本冲突而出现问题. 您将看到如何调试这些类型的问题,查看程序
-
JS中artdialog弹出框控件之提交表单思路详解
artDialog是一个基于javascript编写的对话框组件,它拥有精致的界面与友好的接口. 前言: 自适应内容 artDialog的特殊UI框架能够适应内容变化,甚至连外部程序动态插入的内容它仍然能自适应,因此你不必去考虑消息内容尺寸使用它.它的消息容器甚至能够根据宽度让文本居中或居左对齐--这一切全是XHTML+CSS原生实现. 完善的接口 它的接口完善,可以轻易与外部程序配合使用.如异步写入消息.控制位置.尺寸.显示与隐藏.关闭等. 细致的体验 如果不是在输入状态,它支持Esc快捷键关
-
Linux 查看空间使用情况的实例详解
Linux 查看空间使用情况的实例详解 在日常的Linux巡检中,我们会遇到文件系统目录使用空间很高的情况,例如如下利用"df -h "查看到根目录空间使用超过80%.而我们仅仅知道是根目录空间使用过高,这样是不够的.还需要知道是目录还是文件让根目录空间使用过高.通常我们使用的命令是"du -sh *". 第一步:查看Linux系统的文件系统使用情况,如下可以看到根目录"/"已经使用81%. [root@hostname ~]# df -h Fi
-
Linux ftp 命令行中下载文件get与上传文件put的命令应用详解
介绍:从本地以用户anok登录的机器192.168.0.16上通过ftp远程登录到192.168.0.6的ftp服务器上,登录用户名是peo.以下为使用该连接做的实验. 查看远程ftp服务器上用户peo相应目录下的文件所使用的命令为:ls,登录到ftp后在ftp命令提示符下查看本地机器用户anok相应目录下文件的命令是:!ls.查询ftp命令可在提示符下输入:?,然后回车. 1.从远程ftp服务器下载文件的命令格式: get 远程ftp服务器上当前目录下要下载的文件名 [下载到本地机器上当前
-
Bottle框架中的装饰器类和描述符应用详解
最近在阅读Python微型Web框架Bottle的源码,发现了Bottle中有一个既是装饰器类又是描述符的有趣实现.刚好这两个点是Python比较的难理解,又混合在一起,让代码有些晦涩难懂.但理解代码之后不由得为Python语言的简洁优美赞叹.所以把相关知识和想法稍微整理,以供分享. 正文 Bottle是Python的一个微型Web框架,所有代码都在一个bottle.py文件中,只依赖标准库实现,兼容Python 2和Python 3,而且最新的稳定版0.12代码也只有3700行左右.虽然小,但
-
Android 仿淘宝、京东商品详情页向上拖动查看图文详情控件DEMO详解
一.淘宝商品详情页效果 我们的效果 二.实现思路 使用两个scrollView,两个scrollView 竖直排列,通过自定义viewGroup来控制两个scrollView的竖直排列,以及滑动事件的处理.如下图 三.具体实现 1.继承viewGroup自定义布局View 重写onMeasure()和onLayout方法,在onLayout方法中完成对两个子ScrollView的竖直排列布局,代码如下: 布局文件: <RelativeLayout xmlns:android="http:/
-
vue的style绑定background-image的方式和其他变量数据的区别详解
问题:使用vue加载图片变量,为了图片的自适应,需设置为背景图居中排布 <tr v-for="(item,index) in dataObj"> <td class="video-msg" v-bind:id="item.videoid"> <div class="videoImg fl" v-bind:style="{backgroundImage:'url(' + item.vide
随机推荐
- JS实现静态页面搜索并高亮显示功能完整示例
- 如何计算下载一个文件需要多长时间?
- JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)
- 将字符串小写转大写并延时输出的批处理代码
- Powershell小技巧之使用Copy-Item添加程序到开机启动
- 基于jquery实现鼠标滚轮驱动的图片切换效果
- 编写高质量JavaScript代码的基本要点
- javascript 基础篇1 什么是js 建立第一个js程序
- JavaEE开发之SpringMVC中的自定义消息转换器与文件上传
- Using Django with GAE Python 后台抓取多个网站的页面全文
- asp.net 读取文本文件并插入数据库的实现代码
- 详解WordPress开发中get_header()获取头部函数的用法
- 详解Node.Js如何处理post数据
- JsRender for object语法简介
- 使用javascript实现页面定时跳转总结篇
- 微信小程序 实现拖拽事件监听实例详解
- SQL Server 服务器优化技巧浅谈
- 简单实用的全选反选按钮例子
- 完美解决spring websocket自动断开连接再创建引发的问题
- c++基础语法:构造函数初始化列表