ライフ サイクル: クラスの読み込み -> 接続 -> 初期化 -> 使用 -> アンロード。
(推奨チュートリアル: java 入門チュートリアル)
詳細な紹介:
1. クラスの読み込み
クラスを見つけて読み込みます。バイナリ データ (クラス ファイルを参照)、一般にハードディスク上のクラス ファイルを JVM メモリにロードすることとして知られています
2. 接続: person.setAddress(address) person などのクラス間の関係を決定します person アドレス オブジェクトはオブジェクトにネストされています。
検証: 正確性チェック
準備: 静的静的変数がメモリを割り当て、初期化のデフォルト値を割り当てます。
例: static int num=10;
準備段階では、num=0 に設定し、0 を 10 に変更します。準備フェーズでは、num には値 0 のみが割り当てられます。 JVM にはクラスのみがあり、オブジェクトはありません。
初期化シーケンス: static->non-static->構築メソッド
public class Student{ static int age;//準備フェーズでは、age=0
String name;
}
クラスをロードした後、プログラムには Student クラスのみが含まれ、Student オブジェクトはなく、Student s=new Student()
分析: クラス内のシンボル参照を変換します。直接参照へ
初期段階では、クラスの特定のメモリ アドレスはまだ不明なので、com.pojo.Student は Student クラスの代わりにのみ使用できます。
com.pojo.Student はシンボリック参照になります;
解析フェーズでは、jvm は com.pojo.Student を実際のメモリ アドレスにマップし、そのメモリ アドレスを使用して Student を置き換えることができます。これはメモリ アドレスを使用しますクラスの使用方法は、
(ビデオ チュートリアルの推奨事項: java ビデオ チュートリアル)
3. 初期化:
たとえば、static int num=10;
準備フェーズでは num=0 ですが、その後 (初期化フェーズの後) 0 から 10 に変更されます。
4. 使用法: オブジェクトの初期化、オブジェクトのガベージ コレクション、オブジェクトの破棄
5. アンインストール:
JVM ライフ サイクル終了のタイミング:
正常終了
異常終了、エラー
System.exit()
オペレーティング システム例外
以上がJava クラスのライフサイクルの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。