當 Java 中已經包含陣列時,為什麼還需要用到泛型?


Java 中的陣列用於儲存同類型資料,而泛型允許使用者動態選擇方法或類建構函式接受的型別(類),動態地。

透過定義類泛型,讓其型別安全,即它可以對任何資料型別進行操作。為了理解泛型,讓我們考慮一個示例 -

示例

 即時演示

class Student<T>{
   T age;
   Student(T age){
      this.age = age;
   }
   public void display() {
      System.out.println("Value of age: "+this.age);
   }
}
public class GenericsExample {
   public static void main(String args[]) {
      Student<Float> std1 = new Student<Float>(25.5f);
      std1.display();
      Student<String> std2 = new Student<String>("25");
      std2.display();
      Student<Integer> std3 = new Student<Integer>(25);
      std3.display();
   }
}

輸出

Value of age: 25.5
Value of age: 25
Value of age: 25

為什麼我們需要泛型

在程式碼中使用泛型,您將獲得以下好處 -

  • 編譯時型別檢查 - 通常,當您使用型別(常規物件)時,當您將不正確的物件作為引數傳遞時,它會提示在執行時發生錯誤。

  • 而當您使用泛型時,錯誤將在編譯時發生,這很容易解決。

  • 程式碼重用 - 您可以使用泛型型別編寫方法、類或介面一次,並且可以使用此程式碼多次使用各種引數。

  • 對於某些型別,使用正式型別,您需要強制轉換物件並使用。使用泛型(在大多數情況下),您可以直接傳遞所需型別的物件,而無需依賴強制轉換。

更新於: 09-Sep-2019

66 次瀏覽

職業生涯由此起航

完成課程獲得認證

開始學習
廣告
© . All rights reserved.