Java命令之javap初探】的更多相关文章

javap是jdk自带的一个工具在jdk安装目录的/bin下面可以找到,可以对代码反编译,也可以查看java编译器生成的字节码,对代码的执行过程进行分析,了解jvm内部的工作. 下面列举javap命令的常用options及其功能描述,更多功能的使用请自行Google,楼主不做赘述. 用法摘要 -help 帮助 -l 输出行和变量的表 -public 只输出public方法和域 -protected 只输出public和protected类和成员 -package 只输出包,public和prot…
jstat命令对应用程序资源和性能进行实时监控 常用参数列举如下: 1. jstat -class pid 显示加载class的数量.所占空间.所耗时间等信息 2.jstat -compiler pid  显示编译数量.编译失败数.所耗时间等 3.jstat -gc pid 显示gc情况 S0C   S1C    S0U    S1U   EC EU OC OU PC PU YGC YGCT FGC FGCT GCT 5120.0  5120.0  0.0   0.0  33280.0 4659…
原文出处: Hollis(@Hollis_Chuang) javap是jdk自带的一个工具,可以对代码反编译,也可以查看java编译器生成的字节码. 一般情况下,很少有人使用javap对class文件进行反编译,因为有很多成熟的反编译工具可以使用,比如jad.但是,javap还可以查看java编译器为我们生成的字节码.通过它,可以对照源代码和字节码,从而了解很多编译器内部的工作. 实例 javap命令分解一个class文件,它根据options来决定到底输出什么.如果没有使用options,那么…
背景: 上周针对某信得压力测试demo进行场景复现,但是只提供了class文件,只能通过反编译的软件进行查看,在复现的过程中报错某某某行,这里我以xx行代替,因为是class文件,所以并不能确定具体到底是第几行出现了问题. 解决: 在大神的帮助下,又学习到一个新的命令,javap -v xxxx.class. javap可以输出class文件对应的汇编指令.本地变量表.异常表和代码行偏移量映射表.常量池等等信息. 通过javap -v命令中的LineNumberTable可以得到:第xxx行对应…
依稀记得自己第一次编译*.java文件,第一次运行*.class文件.但是六七年过去了,现在运行java写的程序更多的是用tomcat这种web容器.最近有个小需求,写一个监控zookeeper集群的报警器,当发现集群中节点发生变化时,发出邮件和短信通知运维人员.如果这么一个功能也写成一个web项目放到tomcat里,就有些杀鸡用牛刀了.于是就写了一个jar项目,用 java -jar 运行.占用资源少不说,部署启动很简单,也不占用访问端口.但也遇到了很多问题,才发现自己对java命令还是一知半…
1.java.exe:======================运行java程序,这个相信每一位用Java的人知道了. 2.javac.exe:======================编译的Java程序,生成.class文件 3.javaw.exe:======================功 能:跟java命令相对的,可以运行.class文件,主要用来执行图形界面的java程序运行java命令时,会出现并保持一个console窗口,程 序中的信息可以通过System.out在conso…
1.编译 编写MyProgram.java文件,内容如下: public class MyProgram { public static void main(String[] args) { System.out.println("hello world"); } } 注意:这里没有声明包名,只做了一个最简单的输出helloworld. 用命令行打开java文件所在的目录,然后运行如下命令行,生成class文件: javac MyProgram.java 此时,会在当前目录下生成jav…
一.Javac(java compiler) 1.功能:javac是一种前端编译器,负责将源代码转换为字节码. 2.例子 (1)代码 public class TestJavac { static class Person{ private String name; private Integer age; public Person() { } public Person(String name, Integer age) { this.name = name; this.age = age;…
一.eclipse的javac命令:当eclipse对.java(源文件)文件进行保存操作时(快捷键ctrl+s),会执行javac命令.见上图,Default output folder(默认输出文件):为clss文件的保存位置. 二.eclipse的java命令:见上图,当选中该java文件后,执行java Application(快捷键F11)方法,会运行该class文件,如该class文件未生成,则先执行javac命令,也就是保存该java文件,再运行.…
android的程序基于java开发,当我们接上调试器,执行adb shell,就可以执行linux命令,但是却并不能执行java命令. 那么在android的shell中是否就不能执行java程序了呢. 答案是否定的.我们可以通过app_process来执行java程序. 写一个hello world吧,就是刚开始学java的时候 写得那个hello world,这次要在android上运行. 用记事本新建hello.java文件,编写如下代码: public static class hel…