ホームページ > Java > &#&チュートリアル > JAVA仮想マシン(JVM)の詳しい紹介(4) - クラスファイルの構造

JAVA仮想マシン(JVM)の詳しい紹介(4) - クラスファイルの構造

王林
リリース: 2019-08-24 14:43:35
転載
3739 人が閲覧しました

自動メモリ管理について話した後は、実行サブシステムについて話しましょう。実行サブシステムは、JVM がプログラムを実行する方法を説明します。

JAVA仮想マシン(JVM)の詳しい紹介(4) - クラスファイルの構造

#クラス ファイルの概要

この記事では、クラス ファイルについてのみ説明します。クラス ファイルは、クラス ファイルまたはバイトコード ファイルとも呼ばれます。 javac は .java ファイル (ソース コード) を .class ファイル (バイトコード) にコンパイルし、jvm は .class ファイルをマシン コードに解釈します。

JAVA仮想マシン(JVM)の詳しい紹介(4) - クラスファイルの構造

#クラス ファイルには、Java 仮想マシンの命令セットとシンボル テーブル、およびその他のいくつかの補助情報が含まれています。 8 バイトを基本単位とするギャップのないバイナリ ストリームの集合です。

JAVA仮想マシン(JVM)の詳しい紹介(4) - クラスファイルの構造#データを保存するには、符号なし数値とテーブルという 2 つの構造があります。

(1) 符号なし数値は、数値、インデックス参照、定量値、または UTF-8 でエンコードされた文字列値を記述するために使用されます。基本データ型に属し、u1、u2、u4、u8 はそれぞれ 1 バイト、2 バイト、4 バイト、8 バイトを表します

(2) テーブルは複数のシンボリック数値または他のテーブルで構成されています「_info」で終わるデータ項目で構成される複合データ型として使用されます。

特徴は次のとおりです。クラス ファイル内で、どのバイトが何を表すか、長さはどれくらいか、順序は変更できません。

クラス ファイル コンポーネント

クラスのコンポーネントは、上の図に明確にリストされています。定数プールも強調する必要があります。仮想マシンの実行中は、対応するシンボル参照を定数プールから取得し、クラスの作成時または実行時に解析して特定のメモリ アドレスに変換する必要があります。

JAVA仮想マシン(JVM)の詳しい紹介(4) - クラスファイルの構造上記は、コンパイルされた JAVA 仮想マシンのクラス ファイルに関する部分です。その他の関連する質問については、PHP 中国語 Web サイトを参照してください:

JAVA ビデオ チュートリアル

以上がJAVA仮想マシン(JVM)の詳しい紹介(4) - クラスファイルの構造の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
jvm
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート