java 為什麼要用泛型?

2021-09-13 01:30:02 字數 516 閱讀 8921

①改用泛型可以增加可讀性和穩定性,無需強轉更便捷。

比如說,

list list= new arraylist();

list.add(new integer(0));

integer x = (integer) list.iterator().next();    

上述,編譯器只能保證iterator返回的是object型別,為了保證對integer型別變數賦值的型別安全,必須進行型別轉換。這樣寫容易混亂,並且程式設計師可能寫錯。改進方法自然用泛型了。寫了泛型,很明顯能看懂這裡面儲存的資料是什麼型別,也不用去強轉。

②改用泛型提高**重用性,更具模組化。

比如說,

我寫個dao類,裡面封裝了對資料庫的各種操作。這樣就和業務分開,可以根據需要建customerdao介面,再用customerdaoimpl實現這個介面,繼承dao類即可。

③型別安全。只有指定型別才可以新增到集合中。

泛型 為什麼是泛型?

需求 先需編寫乙個程式,用棧 stack 進行進棧和出棧操作,並對棧中的元素進行運算。方案一 假設元素為int型別,則可使用 code class stack public void push int x public int pop 客戶 code class test 然而,現在需求發生變化。客...

為什麼使用泛型

泛型 當我們將乙個物件放入集合,集合不會記住此物件的型別,當再次取出時,該物件的變異型別為object,但其執行時型別仍然為其本身型別。強制轉換很容易出現classcastexception異常 listarraylist new arraylist 把引數string型別當成引數傳入容器,指定容器...

Java泛型的主要用途

1.泛型的主要用途就是代替各種型別,作為乙個籠統的整體型別代替,也就是代替引數,不論是傳入引數還是返回引數。都可以用泛型來代替。如dao操作類的增刪改查操作,因為傳入引數的型別不同,但基本都是相同介面,所以就可以只寫乙個dao操作類的增刪該查方法,其傳入引數用泛型代替。如 public intupd...