JVM は親委任モデルを通じてクラスをロードします。つまり、クラス ローダーはクラスのロード要求を受け取ると、まずロード タスクを親クラス ローダーに再帰的に委任します。親クラスローダーがクラスロードタスクを完了できる場合、正常に戻ります。親クラス ローダーがこの読み込みタスクを完了できない場合にのみ、クラス ローダー自体が読み込みます。 クラスローダー
概要: クラス ローダーとバイトコードは、Java プラットフォームの独立性の基礎となります。どのクラスでも、そのクラス ローダーとクラス自体が連携して、Java 仮想マシン内での一意性を確立する必要があります。 親委任モデルの利点:
クラスのロードプロセスクラスのライフ サイクルは次の 7 つの段階を経ます。 ロードフェーズ このステージは、対応するクラスを見つけ (クラス名で検索)、このクラスのバイト ストリームをメソッド領域ランタイムのデータ構造に変換し、他のデータにアクセスするためのエントリ ポイントとしてメモリ内でこのクラスを表すことができる java.lang.Class オブジェクトを生成するために使用されます。 検証フェーズ このステップは主にバイトコードのセキュリティを検証するためのものです。セキュリティ チェックが実行されないと、安全でないバイトコードや誤ったバイトコードがロードされ、システムがクラッシュする可能性があります。これは JVM の自己保護のための重要な対策です。 検証の主なアクションは次のとおりです。
準備 このステージは、クラスで定義された静的変数のメモリを初期化して割り当てるために使用されます。これらの静的変数はメソッド領域に割り当てられます。 JDK 1.7 より前では HotSpot 仮想マシンはメソッド領域にありますが、JDK 1.8 以降ではこの変数はクラス オブジェクトとともに Java ヒープ内に格納されます。 解析フェーズ このステージは主に、クラス、インターフェース、フィールド、メソッドを解析するために使用されます。解析中に、シンボリック参照は直接参照に置き換えられます。 シンボリック参照は、参照先を記述するために使用されるシンボルのセットです。シンボルは、使用時にターゲットを明確に特定できる限り、任意の形式のリテラルにすることができます。直接参照は、ターゲットを直接指すポインター、相対オフセット、または間接的にターゲットを特定できるハンドルです。 シンボリック参照と直接参照には重要な違いがあります。シンボリック参照を使用する場合、参照先は必ずしもメモリにロードされるわけではありません。直接参照を使用する場合、参照先ターゲットは仮想マシンのメモリ内にすでに存在している必要があります。 初期化 初期化フェーズでは、JVM はクラスに記述された Java ビジネス コードを正式に実行し始めます。このステップの後、クラスのロードプロセスは正式に完了します。 要約する上の図に示すように、2 つの明るい緑色の部分はクラスのライフ サイクルを表します。これは、クラスのロードからクラス インスタンスの作成と使用、そして使用されなくなったクラス オブジェクトが GC によってアンロードされ、リサイクルされるまでのプロセスです。 ここで注意すべき点は、Java 仮想マシンに付属する 3 つのクラス ローダーによってロードされたクラスは、仮想マシンのライフ サイクル全体を通じてアンロードされないことです。ユーザー定義のクラスローダーによってロードされたクラスのみをアンロードできます。 |
<<: Curl を使用して Kubernetes をデバッグする!
>>: IDC:中国の産業用クラウド市場規模は2020年後半に23億ドルに達する見込み
実際、モバイル KPI を推進する前に、モバイル インターネット広告についてある程度理解しておく必要...
Hosteons は現在、米国西海岸近くのソルトレイクシティ データセンターで AMD Ryzen ...
潮が引いたときに初めて、誰が裸で泳いでいるかが分かります。 「何千もの共同購入戦争」を経験した後、共...
「これまで、モバイル インターネット マーケティングといえば、まず「SMS マーケティング」を思い浮...
日常のウェブサイトの運用とメンテナンスでは、スパイダーのクローリング状況を把握し、日常業務を調整する...
一般的に、デジタル時代においては、作品の価値を具体的な定量データで評価することを好む傾向があるため、...
苦情に強い VPS を購入して著作権を無視したい場合は、ハンガリーの VPS 販売業者 mikrov...
最近、「No Man's Land」という映画が公開されました。皆さんはご覧になったかどうか...
組織のクラウド インフラストラクチャから最大限の価値を引き出すことは困難な作業です。しかし、重要な考...
5月22日夜、アリババグループは2020年度の業績を発表した。アリババクラウドの年間収益は400億元...
長年SEOに携わってきたあなたは、Googleが私たちの「敵」なのか、それとも親友なのかを真剣に考え...
多くの初心者が SEO 最適化を行うとき、ユーザー エクスペリエンスの概念を知りません。ホームページ...
Intrado の CTO である Thomas Squeo 氏は最近、複数のクラウドの使用と社内の...
サンドボックス効果: 新しい Web サイトが構築され、検索エンジンに送信されると、検索エンジンはス...
ここ数日の調査とデータ収集によると、Kステーションの状況は依然として非常に深刻です。SEOデータ指標...