Java オブジェクトの強い参照、弱い参照、弱い参照、および仮想参照
JDK1.2 より前のバージョンでは、オブジェクトがどの変数からも参照されていない場合、プログラムはそのオブジェクトを使用できなくなります。つまり、プログラムは、オブジェクトが到達可能な場合にのみオブジェクトを使用できます。これは日常生活と同じで、お店で物を買った後、役に立つものであればそのまま持ち、そうでないものはゴミ箱に捨てて清掃業者に回収してもらいます。一般的に、一度ゴミ箱に捨てられたアイテムを拾って再度使用することはできません。
しかし、状況はそれほど単純ではない場合もあり、味気なく、捨てるのは残念です。この種のアイテムは今は役に立ちませんが、保管しておくとスペースがかかりますが、将来使用される可能性があるため、すぐに捨てるのは費用対効果が高くありません。このような必需品については、家に十分なスペースがある場合は、まず自宅に置いておくという妥協案が考えられます。自宅に十分なスペースがない場合は、家のゴミをすべて撤去したとしても、必要不可欠なアイテムを収納することはできません。日用品が足りない場合は、これらの必需品を捨ててください。
JDK バージョン 1.2 以降、オブジェクト参照は 4 つのレベルに分割され、プログラムがオブジェクトのライフサイクルをより柔軟に制御できるようになりました。これら 4 つのレベルは、高から低の順に、強参照、ソフト参照、弱参照、仮想参照です。
この章の前半で紹介した引用は、実際には強い引用であり、最もよく使用される引用です。オブジェクトに強い参照がある場合、それは必須の日用品と同様であり、ガベージ コレクターはそれを再利用することはありません。メモリ領域が不十分な場合、Java 仮想マシンは、メモリ不足の問題を解決するために強参照を持つオブジェクトを恣意的にリサイクルするのではなく、OutOfMemoryError エラーをスローしてプログラムを異常終了させます。
オブジェクトがソフト参照のみを持つ場合、それは使い捨ての日用品に似ています。十分なメモリ領域がある場合、ガベージ コレクタはメモリ領域を再利用しません。メモリ領域が不十分な場合は、これらのオブジェクトのメモリが再利用されます。ガベージ コレクターがオブジェクトを収集しない限り、オブジェクトはプログラムで使用できます。ソフト参照を使用して、メモリに依存するキャッシュを実装できます。
3.弱参照
弱参照は参照キュー (ReferenceQueue) と組み合わせて使用できます。弱参照によって参照されるオブジェクトがガベージ コレクションされた場合、Java 仮想マシンはそれに関連付けられた参照キューに弱参照を追加します。
名前が示すように、「ファントム参照」は名前だけです。他の参照とは異なり、ファントム参照はオブジェクトのライフサイクルを決定しません。オブジェクトがファントム参照のみを保持している場合、オブジェクトには参照がないかのようになり、いつでもガベージ コレクションが行われる可能性があります。
仮想参照は主に、ガベージ コレクションされるオブジェクトのアクティビティを追跡するために使用されます。仮想参照、ソフト参照、弱参照の違いの 1 つは、仮想参照は参照キュー (ReferenceQueue) と組み合わせて使用する必要があることです。ガベージ コレクターがオブジェクトをリサイクルする準備をしているときに、オブジェクトにまだ仮想参照があることが判明すると、オブジェクトのメモリをリサイクルする前に、それに関連付けられた参照キューに仮想参照を追加します。プログラムは、仮想参照が参照キューに追加されているかどうかを判断することによって、参照されたオブジェクトがガベージ コレクションされるかどうかを判断できます。プログラムは、仮想参照が参照キューに追加されたことを検出すると、参照されたオブジェクトのメモリがリサイクルされる前に必要なアクションを実行できます。
java.lang.ref パッケージには、SoftReference クラス、WeakReference クラス、PhantomReference クラスの 3 つのクラスが提供されており、それぞれソフト参照、弱参照、ファントム参照を表します。 ReferenceQueue クラスは参照キューを表し、これら 3 つの参照クラスと組み合わせて使用して、参照されたオブジェクトをリサイクルする際の Java 仮想マシンのアクティビティを追跡できます。次のプログラムは、String オブジェクト、ReferenceQueue オブジェクト、および WeakReference オブジェクトを作成します:
//強参照を作成します
String str = new String("hello");
//参照キューを作成します。
ReferenceQueue
//Create 「hello」オブジェクトを参照し、rq 参照キューに関連付けられている弱参照
//
WeakReference
上記は、Java オブジェクトの強参照、ソフト参照、弱参照、および仮想参照の内容です。さらに関連した内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











繁栄している仮想通貨市場では、信頼できる取引プラットフォームを選択することが重要です。この記事では、Binance、Coinbase、FTX、Huobi、Okx、Gemini、Kraken、Bitstamp、Bittrex、Kucoinなど、10の非常に尊敬される仮想通貨取引プラットフォームを推奨しています。セキュリティ、流動性、費用、資産の選択、ユーザーエクスペリエンスなどの要因は、取引プラットフォームを選択する際に重要です。この記事では、権威ある参照を提供し、ニーズに最適な取引プラットフォームを見つけるのに役立ちます。

推奨される最高の仮想通貨取引プラットフォーム: Binance:最大のトランザクションボリューム、最も多くのお金がサポートされており、エコシステムは完璧です。 OKX:高度なトレーディングエンジン、リッチ取引ツール、強力なデリバティブトレーディングプラットフォーム。 Gate.io:最大数の暗号通貨、便利なユーザーインターフェイス、および革新的な機能。 Bitget:デリバティブ取引、主要なソーシャルトレーディング機能、強力な流動性に焦点を当てます。 Coinbase:米国の初心者に最大かつ最も準拠し、適しています。

2025年のトップ10の最も安全な仮想通貨交換: バイナンス; okx; gate.io; ビットゲット; huobi; クコイン; Kraken; バイビット; crypto.com; コインベース。

2025年のトップ10の仮想通貨トレーディングは、セキュリティ、豊かな品種、および大規模なトランザクションのボリュームと低い料金を備えています - 言語サポート。

この記事では、Binance、Gate.io、Ouyi Okx、Coinbase、Kraken、Bitfinex、Kucoin、Bybit、Huobi、Bitmexなど、世界でより包括的なランキングを備えた仮想通貨取引プラットフォームを紹介します。これらのプラットフォームには、トランザクションの深さ、ユーザーエクスペリエンス、セキュリティ、コンプライアンスなどの点で独自の利点があります。通貨取引に焦点を当てたものもあれば、異なるユーザーのニーズを満たすためにデリバティブトレーディングが得意なものもあります。 適切なプラットフォームを選択するには、あなた自身の取引体験、リスク許容度、投資の好みに基づいて包括的な検討が必要です。 クリックして読んで、これらのトップ仮想通貨取引プラットフォームの詳細については、デジタル資産を安全かつ効率的に取引するのに役立ちます

上位10のデジタル通貨交換アプリケーションの中で、トップ3は、Binance(リッチ製品と高度な取引ツール)、OKX(世界をリードする暗号通貨デリバティブ取引プラットフォーム)、およびgate.io(1,000以上のデジタル通貨取引をサポートしています)です。取引所を選択するときは、セキュリティ、取引タイプ、取引手数料、ユーザーエクスペリエンス、評判、コミュニティなどの重要な手順を検討する必要があります。

2025年、仮想通貨市場は引き続き繁栄すると予想され、主要な取引所はユーザーのニーズを満たすためにさまざまなサービスを提供します。その中には、その流動性とセキュリティ対策で知られる幅広い取引ペアと低い料金に多くの注目を集めています。

2025年の香港のトップは、包括的なエコシステムを持っていますそして透明。
