使用字串派生變數名稱動態建立物件
當嘗試使用動態產生的名稱建立物件時,Java 嚴格的變數命名規則可能看起來很有限。然而,這種明顯的限制實際上是 Java 關注變數引用以及變數名稱的重要性相對減弱的結果。
雖然 PHP 等腳本語言允許創建具有字串派生名稱的變量,但 Java 採用了不同的方法。 Java中的變數主要作為物件的引用,其名稱意義不大。
解決物件命名要求
在物件需要動態命名的場景中,建議使用Maps或清單。這些容器允許將字串值對應到對象,從而根據動態標準提供存取和操作對象的靈活性:
Map dogMap = new HashMap();
dogMap.put("Fido", new Dog("Fido"));
Dog myPet = dogMap.get("Fido");
在此範例中,「Fido」字串用作從dogMap容器存取對應的「Fido」狗物件的鍵。
或者,可以在 Dog 類別本身中實作 name 屬性:
class Dog {
private String name;
public Dog(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
這個方法允許每個狗物件都有一個可以檢索或修改的 name 屬性:
Dog fido = new Dog("Fido");
Dog spot = new Dog("Spot");
System.out.println(fido.getName()); // Outputs "Fido"
總體而言,雖然Java 不允許建立具有字串派生名稱的變量,但各種替代方法提供了處理動態命名物件的靈活性。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3