超碰免费人人操|国产视频二区久久艹人人操|欧美激情第一页在线|久热最新无码中文视频|91精品国际成人|亚洲成人精品在线视频青青草|久草免费高清完整在线观看|你懂的AV在线日本黄网页|国产黄色AV日韩女同网|欧美成人色区导航片av

java類(lèi)文件內(nèi)容介紹

時(shí)間:2025-11-20 09:23:34 java語(yǔ)言 我要投稿

java類(lèi)文件內(nèi)容介紹

  一、什么是Java類(lèi)文件

  Java類(lèi)文件是Java程序的二進(jìn)制表示形式。每一個(gè)類(lèi)文件代表一個(gè)類(lèi)或者接口。不可能在一個(gè)類(lèi)文件中放入多個(gè)類(lèi)或者接口。這樣就使得無(wú)論類(lèi)文件是在哪一種平臺(tái)上生成,都可以在任何主機(jī)上執(zhí)行。

  雖然類(lèi)文件是Java體系結(jié)構(gòu)的一部分,但是他并不是與Java語(yǔ)言不可分的。你可以將其他語(yǔ)言的程序編譯為類(lèi)文件,也可以將Java程序文件編譯為其他二進(jìn)制形式。

  Java類(lèi)文件是一個(gè)基于8-bit字節(jié)的二進(jìn)制流。數(shù)據(jù)塊順序的、無(wú)分割符的、big-endian的形式存儲(chǔ)。

  二、類(lèi)文件的內(nèi)容

  Java的類(lèi)文件中包含了所有Java虛擬機(jī)所需要的關(guān)于類(lèi)和接口的信息。所有類(lèi)文件中的信息都以以下的四種基本類(lèi)型的存儲(chǔ):

  Table 6-1. Class file "primitive types"

  u1 a single unsigned byte

  u2 two unsigned bytes

  u4 four unsigned bytes

  u8 eight unsigned bytes

  類(lèi)文件中的主要部分以表6-2的順序存儲(chǔ):

  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、魔術(shù)編碼(magic)

  每一個(gè)Java類(lèi)文件的開(kāi)頭四個(gè)字節(jié)都是魔術(shù)編碼(OxCAFEBABE)。通過(guò)魔術(shù)編碼可以很容易識(shí)別類(lèi)文件。

  2、副版本號(hào)和主版本號(hào)(minor_version and major_version)

  剩下的四個(gè)字節(jié)是副版本號(hào)和主版本號(hào)。但Java技術(shù)在進(jìn)化時(shí),一些新的特性可能會(huì)被加入到類(lèi)文件中。每一次類(lèi)文件格式的變化,都會(huì)相應(yīng)的改變版本號(hào)。虛 擬機(jī)通過(guò)版本號(hào)來(lái)識(shí)別自己能夠處理的類(lèi)文件。Java虛擬機(jī)往往只能處理一個(gè)給定的主版本號(hào)和其下的一些副版本號(hào)。虛擬機(jī)必須拒絕那些不再處理范圍內(nèi)的類(lèi) 文件。

【java類(lèi)文件內(nèi)容介紹】相關(guān)文章:

java類(lèi)文件是什么12-18

Java類(lèi)加載器類(lèi)介紹03-05

java讀文件寫(xiě)文件的方法11-19

Java 對(duì)象和類(lèi)的介紹11-18

Java寫(xiě)入文件的方法01-29

java調(diào)用bat文件的方法07-30

Java Class文件是什么11-19

在Java里處理文件的技巧09-07

Java的類(lèi)02-22

  • 相關(guān)推薦