`

关于JAVA CLASS使用的编译版本

    博客分类:
  • JVM
阅读更多

一,魔数(magic)

每个Class文件的头四个字节称为魔数,它的唯一作用是用来确定该文件是否为一个能被虚拟机接受的Class文件。使用魔数而不使用文件扩展名是出于安全方面的考虑,因为文件扩展名可以很随意的被改动
magic:魔数,0xCAFEBABE(cafe babe)
二,Class文件版本(minor_version 和 major_version)

minor_version:占2字节,次版本号,0x0000
majro_version:占2字节,主版本号,0x0031,转化为十进制为49,是使用JDK1.5编译的。
JDK1.5:0x0031,JDK1.6:0x0032,JDK1.7:0x0033

高版本的JDK可以向下兼容以前版本的Class文件,但是无法运行以后版本的Class文件,即使文件格式并未发生变化

如果使用JDK1.5运行使用JDK1.6编译的Class文件,会报:
java.lang.UnsupportedClassVersionError: Bad version number in .class file
就是由于JDK1.6编译的文件版本号超过了JDK1.5虚拟机所接受的范围

分享到:
评论

相关推荐

    java class反编译工具

    Java Class反编译工具是程序员在处理已编译的字节码文件时不可或缺的辅助工具。这类工具的主要功能是将`.class`文件转换回可读性强的`.java`源代码,帮助开发者理解或修改已有的Java程序,尤其在没有源代码的情况下...

    java.class 反编译工具

    Java 类文件(.class)是Java程序编译后的二进制格式,包含了程序的字节码,用于JVM(Java虚拟机)执行。反编译工具则是将这些字节码转换回可读的源代码(.java文件),帮助开发者理解已有的类库或研究别人的代码。...

    Java的class反编译工具

    Java的Class反编译工具是开发者在理解和学习Java字节码或者进行逆向工程时的重要辅助工具。在Java编程环境中,源代码会被编译成字节码(.class文件),这些字节码是机器不可读的,但是可以由Java虚拟机(JVM)执行。...

    java .class反编译成.java工具

    本文将详细介绍“java .class反编译成.java工具”,以及如何使用jd-gui.exe这个实用的反编译软件。 首先,我们要明白什么是.class文件和.java文件。在Java编程中,程序员编写的是.java源代码文件,这些文件经过Java...

    java jar反编译工具 java Class反编译工具

    本篇文章将详细介绍Java的jar反编译工具——JD-GUI以及如何使用它来反编译Java Class文件。 JD-GUI是一款直观的图形用户界面工具,专门用于反编译Java的Class文件,从而帮助开发者查看和理解字节码背后的源代码。它...

    javaClass反编译javaClass反编译

    - 如果需要生成完整的源代码文件,使用`jad -r .`命令,它会将目录下所有Class文件反编译成Java源代码。 7. **进阶话题** 对于更复杂的反编译需求,如处理Java字节码的动态生成和反射,可能需要结合动态分析工具...

    java .class 类反编译软件

    在使用XJad进行反编译时,用户只需将`.class`文件拖入软件界面,XJad会自动进行解析并尝试生成对应的`.java`源文件。这个过程可能会涉及到对Java字节码指令的理解,如GETSTATIC、INVOKESPECIAL等,以及对类、方法、...

    javaClass反编译: jd-gui

    JavaClass反编译是开发者在探索和理解Java代码运行机制时常用的一种技术。jd-gui是一款功能强大的开源工具,专门用于将编译后的.class文件转换回可读的Java源代码,帮助开发者查看和理解二进制字节码背后的逻辑。在...

    java class文件反编译

    1、打开一个或者多个*.class文件,XJad反编译后,重命名为*.java文件, 保存至当前文件夹,并在编辑器中打开查看; 2、打开一个文件夹,XJad将该文件夹下所有*.class文件进行反编译,并保存至该文件夹下, 依据包...

    java class文件编译

    Java Class文件是Java程序经过编译后的二进制表示形式,它是Java虚拟机(JVM)执行的基础。本文将深入探讨Java类文件的结构、编译过程以及如何使用提供的工具进行查看。 一、Java类文件结构 Java源代码(.java文件...

    Java类class反编译工具

    Java类class反编译工具是开发者在理解和学习Java字节码或者进行逆向工程时必不可少的辅助工具。这些工具能够将已经编译过的.class文件转换回可读性强的.java源代码,帮助我们查看和理解已有的Java类结构,尤其是在...

    java class反编译后的代码还原

    Java类反编译后的代码还原是指将编译后的Java类文件(.class)转换回Java源代码的过程。在这个过程中,可能会出现一些不正常的代码,例如label0 :_L1 MISSING_BLOCK_LABEL_30、JVM INSTR ret 7、JVM INSTR ...

    Java Class文件反编译工具 jd-gui

    Java Class文件是Java程序编译后的二进制格式,它包含了类和接口的定义、方法体、常量池等信息,但这些信息是以机器可读的字节码形式存在,对于人类来说不易理解。为了查看和理解Class文件内部的源代码,我们就需要...

    java class 反编译工具绿色版

    在这个绿色版的Java Class反编译工具中,用户无需安装即可直接使用,非常方便。 首先,我们需要了解什么是.class文件。在Java编程中,当源代码文件(.java)经过Java编译器的处理后,会生成对应的.class文件。这些...

    JAVA反编译软件(可将class文件反编译为java文件)

    Java反编译是Java开发中一个重要的辅助工具,它能够帮助开发者查看已编译的`.class`文件中的源代码,即使原始的`.java`源文件已经丢失或未被提供。这个过程对于理解类库的工作原理、逆向工程、调试、学习或者分析...

    java class文件反编译工具

    Java Class文件反编译工具是开发者在处理已编译的.class文件时的一种实用工具,它能够将二进制的Class文件转换回可读性更强的源代码格式,这对于理解和调试已封装的库或分析未知的Java程序至关重要。本文将详细介绍...

    java反编译工具(.class文件反编译成.java文件)

    Java反编译是将已编译的字节码(.class文件)转换回源代码(.java文件)的过程,这对于理解和学习已有的Java程序、逆向工程或调试都是很有用的。标题提到的"java反编译工具"是用于这个目的的软件,它能够帮助开发者...

    java.class文件反编译工具【免费】

    Java 类(.class)文件是Java程序编译后的二进制形式,它们包含了机器可执行的指令和数据结构。为了查看这些二进制文件中的源代码或者理解其工作原理,我们需要借助反编译工具。本资源提供的是一款名为JD-GUI的免费...

    么把.class文件反编译成.java 经修改后再编译成.class

    下面将详细介绍.class 文件反编译到.java 文件的过程,包括反编译工具的使用和反编译后的修改、再编译等步骤。 一、反编译工具的选择 在反编译.class 文件时,需要使用专门的反编译工具。目前有多种反编译工具可供...

    Java class反编译插件.zip

    jd-gui.exe是一个图形用户界面的应用程序,用于查看Java字节码(.class文件)的源代码,而Readme-说明.htm则提供了关于如何使用该工具的指导和信息。 首先,让我们详细了解一下Java类文件和反编译的概念。Java源...

Global site tag (gtag.js) - Google Analytics