导航:首页 - Java学习的入门---java类文件

Java学习的入门---java类文件
作者:深圳教育在线 来源:www.szedu.net 更新日期:2009-9-22

 一、什么是Java类文件
    Java类文件是Java程序的二进制表示形式。每一个类文件代表一个类或者接口。不可能在一个类文件中放入多个类或者接口。这样就使得无论类文件是在哪一种平台上生成,都可以在任何主机上执行。
    虽然类文件是Java体系结构的一部分,但是他并不是与Java语言不可分的。你可以将其他语言的程序编译为类文件,也可以将Java程序文件编译为其他二进制形式。
Java类文件是一个基于8-bit字节的二进制流。数据块顺序的、无分割符的、big-endian的形式存储。
二、类文件的内容
    Java的类文件中包含了所有Java虚拟机所需要的关于类和接口的信息。所有类文件中的信息都以以下的四种基本类型的存储:
    Table 6-1. Class file "primitive types"
    u1    a single unsigned byte
    u2    two unsigned bytes
    u4    four unsigned bytes
    u8    eight unsigned bytes
    类文件中的主要部分以表6-2的顺序存储:
    Table 6-2. Format of a ClassFile Table
    Type&    #9;Name    Count
    u4    magic    1
    u2    minor_version    1
    u2    major_version    1
    u2    constant_pool_count    1
    cp_info    constant_pool    constant_pool_count-1
    u2    access_flags    1
    u2    this_class    1
    u2    super_class    1
    u2    interfaces_count    1
    u2    interfaces    interfaces_count
    u2    fields_count    1
    field_info    fields    fields_count
    u2    methods_count    1
    method_info    methods    methods_count
    u2    attributes_count    1
    attribute_info    attributes    attributes_count
    1、魔术编码(magic)
    每一个Java类文件的开头四个字节都是魔术编码(OxCAFEBABE)。通过魔术编码可以很容易识别类文件。
    2、副版本号和主版本号(minor_version and major_version)
    剩下的四个字节是副版本号和主版本号。但Java技术在进化时,一些新的特性可能会被加入到类文件中。每一次类文件格式的变化,都会相应的改变版本号。虚 拟机通过版本号来识别自己能够处理的类文件。Java虚拟机往往只能处理一个给定的主版本号和其下的一些副版本号。虚拟机必须拒绝那些不再处理范围内的类 文件。

[本文共有 4 页,当前是第 1 页] <<上一页 下一页>>


报 名 此 课 程 / 咨 询 相 关 信 息
【预约登门】 【网上咨询】 【订座试听】 【现在报名】
课程名称
Java学习的入门---java类文件
真实姓名
* 性 别
联系电话
* E-mail:
所在地区
咨询内容

      

相关文章:
·Java的学习之路 (2009-9-22)

Copyright© 2004-2010 www.szedu.net 深圳教育在线 版权所有
中国·深圳
粤ICP备06023013号