この公式のOracle Javaチュートリアルから:
Currency クラスは、特定の通貨に対して複数の Currency インスタンスが存在しないように設計されていることに注意してください。したがって、パブリック コンストラクターはありません。前のコード例で示したように、getInstance メソッドを使用して Currency インスタンスを取得します。
特定の通貨に対して Currency の複数のインスタンスを持つリスクは何ですか? 前もって感謝します。
リンク参照通貨
特定のロケールの通貨の表現。各通貨は ISO 4217 コードによって識別され、通貨ごとにこのクラスのインスタンスが 1 つだけ存在します。その結果、
getInstance()
コンストラクターを使用するのではなく、メソッドを介してインスタンスが作成されます。
Java Docが言うように、<JAVA_HOME>/lib/currency.properties
. プロパティ ファイルの内容は、それぞれ ISO 3166 国コードと ISO 4217 通貨データのキーと値のペアです。値の部分は、通貨の 3 つの ISO 4217 値、つまり、アルファベット コード、数値コード、マイナー単位で構成されます。これら 3 つの ISO 4217 値はコンマで区切られています。「#」で始まる行はコメント行と見なされます。例えば、
サンプル通貨プロパティ
JP=JPZ,999,0
日本の通貨データに取って代わります。