Javaのクラスローディング機構の例を詳しく解説

黄舟
リリース: 2017-09-16 10:51:05
オリジナル
1461 人が閲覧しました

クラスファイルはJavaではJVMを介してロードされます。クラスのロード方法は暗黙的ロードと明示的ロードに分けられます。このうち、暗黙的ロード中に new を通じてオブジェクトが作成されると、対応するクラス ファイルがクラス ローダーを通じて暗黙的に JVM にロードされます。明示的なロードでは、class.forName() を通じて必要なクラス ファイルを JVM に明示的にロードします。

Java 言語では、すべてのクラス ファイルを一度に JVM にロードするのではなく、最初に基本クラスが JVM にロードされ、必要に応じて他のユーザー クラスが JVM にロードされます。

Java 言語では、クラスはシステム クラス、拡張クラス、カスタム クラスの 3 つのカテゴリに分類できます。これら 3 種類のファイルに対して異なるクラス ローダーが提供されます

Bootstrap Loader - システム クラスのロードを担当します

ExtClass Loader - - 拡張クラスのロードを担当します

AppClassLoader - アプリケーション クラスのロードを担当します

クラスのロード プロセスには、主に次の手順があります: (詳細については、「Java 仮想マシンの詳細を理解する」を参照してください)

1ロード: 検索パスに従って検索し、対応するクラス ファイルをインポートします。

2. リンク: リンクは 3 つのステップに分けることができます

using using

’ s ’s 2.

’ ’ ’ ’ ’ ’ ’ ’ ’ ’ ’ ’ ’ ’ への連携 : シンボルを解決参照を直接参照に変換します

3. 初期化: 静的変数と静的コード ブロックに対して初期化作業を実行します。

以上がJavaのクラスローディング機構の例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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