javap使用】的更多相关文章

javap是JDK自带的反汇编器,可以查看java编译器为我们生成的字节码.通过它,我们可以对照源代码和字节码,从而了解很多编译器内部的工作,有助与我们更加理解java特性. javap(反汇编命令)详解 使用javap反编译Java字节码文件 Eclipse集成javap查看字节码 在eclipse中使用javap Bytecode Outline plugin 插件查看字节码    http://asm.ow2.org/eclipse/index.html…
2016-07-04 15:56:39 我们都知道: 1.内部类可以直接访问外部类的private字段和方法: 2.非静态内部类持有外部类的引用: 3.外部类可以直接访问内部类的private字段和方法(不管是不是静态内部类): 最近看到一篇文章,大意是讨论这个的,处于好奇,想从字节码的角度研究一下原因,于是有此文. 1.关于javap命令: "The javap command disassembles one or more class files. The output depends o…
通过JVM编译java文件生成class字节码文件,很多时候很想用工具打开看看,目前还不清楚哪一个软件专门查看class文件的,但是通过windows下的javap命令可以查看详细的class文件 ShowClass.java文件源码很简单main函数直接打印“Hello class file!”…
最近重新复习了一下java基础,在使用javap的过程中遇到了一些问题,这里便讲讲对于一个类文件如何编译.运行.反编译的.也让自己加深一下印象. 如题,首先我们在桌面,开始->运行->键入cmd 回车,进入windows命令行.进入如图所示的画面: 可知,当前默认目录为C盘Users文件夹下的Administrator文件夹.一般而言,我们习惯改变当前目录.由于windows有磁盘分区,若要跳到其他磁盘,例如E盘,有几种方法: 1.输入命令: pushd 路径(此命令可将当前目录设为所希望的任…
分析java语言特性的一个好帮手是使用javap工具查看java编译后的字节码,楼主今天在学习java泛型中的桥方法时遇到一些不解,想到javap这个好工具可以帮助解答一些疑惑,索性就捣鼓如何在eclipse中配置javap工具快速查看java字节码. 楼主学习的代码工程用的maven结构.默认java编译后的class文件是放在: 工程目录/target/classes 下的,故在配置javap的时候需要配置的变量有所不同,不能直接参考网上的教程方式: 首先进入run -> External…
查看Java字节码 1 javac –verbose查看运行类是加载了那些jar文件 HelloWorld演示: public class Test { public static void main(String[] args) { Object lock = new Object(); synchronized (lock) { System.out.println("hello world."); } } } javac –verbose HelloWorld.java D:\s…
SYNOPSIS javap [options] classes DESCRIPTION The javap command is called "disassembler" because it takes apart class files and tells you what's inside them. We won't use it often but sometimes it is very useful to find out how a particular java…
一个普通的Java类: package org.ccnt.concurrence; public class VolatileTest { public static volatile int race = 0; public static void increate() { race ++; } private static final int THREAD_COUNT = 20; public static void main(String[] args) { Thread[] thread…
转自:http://blog.csdn.net/hudashi/article/details/7062668 javap是JDK自带的反汇编器,可以查看java编译器为我们生成的字节码.通过它,我们可以对照源代码和字节码,从而了解很多编译器内部的工作. 语法: javap [ 命令选项 ] class. . . javap 命令用于解析类文件.其输出取决于所用的选项.若没有使用选项,javap 将输出传递给它的类的 public 域及方法.javap 将其输出到标准输出设备上. 命令选项 -h…
javap是sun提供的对class文件进行反编译的工具 1.配置Run---external tools---external tools configurations 选择Program 新建javap运行方式 设置location.workspace等选项 如下图: 需要注意的是workspace选择和argument配置 workding directory 设置为${workspace_loc}/${project_name} , Arguments:  -c -verbose -cl…
javap可以打印出java的字节码: -c     Prints out disassembled code, i.e., the instructions that comprise the Java bytecodes, for each of the methods in the class. These are documented in the Java             Virtual Machine Specification @             http://do…
1.配置 Run---external tools---external tools configurations 选择Program 新建javap运行方式 设置location.workspace等选项 如下图:   注意: workding directory 设置为   ${workspace_loc}/${project_name} , Arguments    -c -verbose -classpath ${workspace_loc}/${project_name}/bin ${…
无限递归的构造器和javap使用指南 public class ConstructorRecursion { ConstructorRecursion rc; { rc = newConstructorRecursion(); } public ConstructorRecursion(){ System.out.println("noparameter constructor"); } public static void main(String[] args){ Construct…
1. 输出所有类和成员 javap -private XX.class 2. 输出分解后的代码 javap -c XX.class…
编写Test.java.编译完后生成Test.class文件,然后对该文件运行javap -c Test命令,生成字节码指令.阅读并得出结论 一.s1和s2指向常量池的不同常量 ①java代码 public class Test {     public static void main(String[] args) throws IOException {         String s1="t";         String s2="m";     } }…
Ability to decompile a Java class file is quite helpful for any Java developer who wants to look into the source of any open source or propriety library used in project. Though I always prefer to attach source in Eclipse of most common libraries like…
原文出处: Hollis(@Hollis_Chuang) javap是jdk自带的一个工具,可以对代码反编译,也可以查看java编译器生成的字节码. 一般情况下,很少有人使用javap对class文件进行反编译,因为有很多成熟的反编译工具可以使用,比如jad.但是,javap还可以查看java编译器为我们生成的字节码.通过它,可以对照源代码和字节码,从而了解很多编译器内部的工作. 实例 javap命令分解一个class文件,它根据options来决定到底输出什么.如果没有使用options,那么…
工程先用eclipse生成class目录,转到class目录下执行: javap -s com.example.hellojni.MainActivity Compiled from "MainActivity.java" public class com.example.hellojni.MainActivity extends android.app.Activity { static {}; Signature: ()V public com.example.hellojni.M…
命令基本概述 javap是JDK自带的反汇编器,可以查看java编译器为我们生成的字节码.通过它,可以对照源代码和字节码,从而了解很多编译器内部的工作.可以在命令行窗口先用javap -help看下javap工具支持的选项:C:\>javap -help C:\>javap -help Usage: javap <options> <classes>... where options include: -c 输出类中各方法的未解析的代码,即构成java字节码的指令 -c…
jdk提供了javap命令用于查看字节码来查看程序执行赋值的顺序,看懂这些关键字可以很好的理解程序执行的过程 转自:http://www.cnblogs.com/duanxz/archive/2014/05/14/3724426.html#top Java栈和局部变量操作 Java虚拟机是基于栈的机器,几乎所有Java虚拟机的指令都与操作数栈相关.栈操作包括把常量压入操作数栈.执行通用的栈操作.在操作数栈和局部变量之间往返传输值. 1常量入栈操作: 操作码在执行常量入栈操作之前,使用三种方式指明…
Run→External Tools→External Tools Configurations-进入如下图二所示的Program配置界面.也可以通过如下图一所示的工具栏按钮进入Program配置界面. 图一: 图二: 如上图二所示的"Program"处第一次打开时是空的,右键单击选择"new". 配置如上图二右侧红框中的三处.Location为当前使用的jdk中javap.exe的位置: Working Directory为工作目录,配置成"${work…
javap命令所有参数如下图所示: javap 命令用于解析类文件.其输出取决于所用的选项.若没有使用选项,javap 将输出传递给它的类的 public 域及方法.javap 将其输出到标准输出设备上. 命令选项 -help 输出 javap 的帮助信息. -l 输出行及局部变量表. -b 确保与 JDK 1.1 javap 的向后兼容性. -public 只显示 public 类及成员. -protected 只显示 protected 和 public 类及成员. -package 只显示…
 1  案例场景,通过C语言回调Java的代码,案例的最终界面: 2  案例的代码结构如下: 3 编写DataProvider的代码: package com.example.ndkcallback; public class DataProvider { //C调用java空方法 public void helloFromJava(){ System.out.println("哈哈哈  我被调用了"); } //C调用java中的带两个int参数的方法 public int Ad…
本词条缺少概述.信息栏.名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! javap是jdk自带的一个工具,可以反编译,也可以查看java编译器生成的字节码,是分析代码的一个好工具. javap - Java class文件分解器 分解class文件 摘要: javap [ options ] class. . . 描述: javap命令分解一个class文件,它根据options来决定到底输出什么.如果没有使用options,那么javap将会输出包,类里的protected和p…
一直在学习Java,碰到了很多问题,碰到了很多关于i++和++i的难题,以及最经典的String str = "abc" 共创建了几个对象的疑难杂症. 知道有一日知道了java的反汇编 命令  javap.现将学习记录做一小结,以供自己以后翻看.如果有错误的地方,请指正. 1.javap 明确一个问题:javap是什么?网上有人称之为 反汇编器,可以查看java编译器为我们生成的字节码.通过它,我们可以对照源代码和字节码,从而了解很多编译器内部的工作. 2.初步认识javap publ…
Java Virtual Machine  官方介绍 Java虚拟机规范官方文档 https://docs.oracle.com/javase/specs/index.html 其中以java8的为 https://docs.oracle.com/javase/specs/jvms/se8/html/index.html 看下官方的介绍的一节  The Java Virtual MachineJava虚拟机是Java平台的基石.是java实现硬件和操作系统的独立性(也就是无关性),生成极小体积的…
javap可以查看class文件信息,灵活的运用javap,让你更好的理解class类文件结构信息等   方法/步骤     javap -help查看命令帮助   javap -package Test.class查看类文件 package/protected/public 修饰的类和成员变量   javap -p -v Test.class 查看类文件全部指令信息   javap -c Test.class 查看类文件二进制信息   javap -sysinfo Test.class查看文件…
转载于:[xieyu_zy](http://blog.csdn.net/xieyuooo/article/details/17452383) 3.2.1javap命令工具 第1章中我们就提到了有些地方需要用javap命令工具来看编译后的指令是什么,第2.2.1节中胖哥使用了一个简单的程序让大家感受了一下javap命令工具是什么,这里再次谈到javap命令工具了.或许这一次我们可以对javap命令工具说得稍微清楚一点.为此,胖哥会单独再写几段小程序给大家说说javap命令工具的结果怎么看. 胖哥为…
javap -c [ClassName]  编译为汇编语言…
时隔多日,终于找到为什么javap -v .class文件没有LocalVariableTable出现 因为默认的javac编译没有生成相关的调试信息,这里我们可以通过javac -help查看指令帮助 然后我们就按照这个表上的信息,重新编译.java文件就能看到LocalVaribleTable了…