文字列派生変数名を使用した動的オブジェクトの作成
動的に生成された名前を持つオブジェクトを作成しようとすると、Java の厳格な変数命名規則が制限されているように見える場合があります。ただし、この認識されている制限は、実際には、Java が変数参照に重点を置き、変数名の重要性が相対的に低下した結果です。
PHP のようなスクリプト言語では文字列由来の名前を持つ変数を作成できますが、Java は異なるアプローチ。 Java の変数は主にオブジェクトへの参照として機能し、変数の名前はそれほど重要ではありません。
オブジェクトの名前付け要件への対処
オブジェクトに動的な名前付けが必要なシナリオでは、マップやマップなどのコンテナを利用することをお勧めします。リスト。これらのコンテナを使用すると、文字列値をオブジェクトにマッピングできるため、動的な基準に基づいてオブジェクトにアクセスして操作する際の柔軟性が得られます。 DogMap.put("Fido", new Dog("Fido")); Dog myPet = DogMap.get("Fido");
Map dogMap = new HashMap();
dogMap.put("Fido", new Dog("Fido"));
Dog myPet = dogMap.get("Fido");
または、Dog クラス自体に name プロパティを実装することもできます。class Dog { プライベート文字列名。 public Dog(文字列名) { this.name = 名前; } public String getName() { 名前を返します。 } }
class Dog {
private String name;
public Dog(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
Dog fido = new Dog("Fido"); ドッグスポット = new Dog("スポット"); System.out.println(fido.getName()); // 出力 "Fido"
全体として、Java では文字列由来の名前を持つ変数の作成は許可されていませんが、さまざまな代替アプローチにより、動的に名前が付けられたオブジェクトを柔軟に処理できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3