クラス・ロード・プロセス
接続 初期化。接続プロセスは、検証 準備 解析 の3つのステップに分けられます。
ロード
- 完全なクラス名でサブクラスを定義するバイナリ・バイト・ストリームを取得します。
- バイトストリームで表される静的ストレージ構造を、メソッドが移動するための実行時データ構造に変換します。
- メソッド・エリアのこのデータへのアクセス・エントリー・ポイントとして、メモリ上のクラスを表すClassオブジェクトを生成します。
バリデーション
準備
クラス変数に割り当てられたメモリの正式な割り当てとクラス変数の初期値の設定
解析
仮想マシンが定数プール内のシンボリック参照を直接参照に置き換えるプロセス。
初期化
C++で実装されたトップレベルのロード・クラスは、%JAVA_HOME%/libディレクトリにあるjarパッケージとクラス、または-Xbootclasspathパラメータで指定されたパスにあるすべてのクラスをロードします。