Java 7菱形語法與泛型構造器實例分析
更新時間:2019年07月23日 10:58:06 作者:cakincqm
這篇文章主要介紹了Java 7菱形語法與泛型構造器,結合實例形式分析了Java菱形語法與泛型構造器相關原理與使用技巧,需要的朋友可以參考下
本文實例講述了Java 7菱形語法與泛型構造器。分享給大家供大家參考,具體如下:
一 實戰(zhàn)——泛型構造器
1 代碼
class Foo { public <T> Foo(T t) { System.out.println(t); } } public class GenericConstructor { public static void main(String[] args) { // 泛型構造器中的T參數為String。 new Foo("瘋狂Java講義"); // 泛型構造器中的T參數為Integer。 new Foo(200); // 顯式指定泛型構造器中的T參數為String, // 傳給Foo構造器的實參也是String對象,完全正確。 new <String> Foo("瘋狂Android講義"); // 顯式指定泛型構造器中的T參數為String, // 但傳給Foo構造器的實參是Double對象,下面代碼出錯 //new <String> Foo(12.3); } }
2 運行
瘋狂Java講義
200
瘋狂Android講義
二 實戰(zhàn)——泛型構造器和菱形語法混用
1 代碼
class MyClass<E> { public <T> MyClass(T t) { System.out.println("t參數的值為:" + t); } } public class GenericDiamondTest { public static void main(String[] args) { // MyClass類聲明中的E形參是String類型。 // 泛型構造器中聲明的T形參是Integer類型 MyClass<String> mc1 = new MyClass<>(5); // 顯式指定泛型構造器中聲明的T形參是Integer類型, MyClass<String> mc2 = new <Integer> MyClass<String>(5); // MyClass類聲明中的E形參是String類型。 // 如果顯式指定泛型構造器中聲明的T形參是Integer類型 // 此時就不能使用"菱形"語法,下面代碼是錯的。 // MyClass<String> mc3 = new <Integer> MyClass<>(5); } }
2 運行
t參數的值為:5
t參數的值為:5
3 說明
如果程序顯示指定了泛型構造器中聲明的形參的實際類型,則不可以使用菱形語法。
更多java相關內容感興趣的讀者可查看本站專題:《Java面向對象程序設計入門與進階教程》、《Java數據結構與算法教程》、《Java操作DOM節(jié)點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設計有所幫助。
您可能感興趣的文章:
相關文章
Java 實戰(zhàn)項目之誠途旅游系統(tǒng)的實現流程
讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SpringBoot+Vue+maven+Mysql實現一個精美的物流管理系統(tǒng),大家可以在過程中查缺補漏,提升水平2021-11-11SpringBoot3集成ElasticSearch的方法詳解
Elasticsearch是一個分布式、RESTful風格的搜索和數據分析引擎,適用于各種數據類型,數字、文本、地理位置、結構化數據、非結構化數據,本文給大家詳解介紹了SpringBoot3集成ElasticSearch的方法,需要的朋友可以參考下2023-08-08