一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java中的泛型方法詳解及簡單實例

Java中的泛型方法詳解及簡單實例

2020-07-18 13:45java教程網 Java教程

這篇文章主要介紹了Java中的泛型方法詳細介紹的相關資料,需要的朋友可以參考下

  java 泛型方法

泛型是什么意思在這就不多說了,而Java中泛型類的定義也比較簡單,例如:public class Test<T>{}。這樣就定義了一個泛型類Test,在實例化該類時,必須指明泛型T的具體類型,例如:Test<Object> t = new Test<Object>();,指明泛型T的類型為Object。

       但是Java中的泛型方法就比較復雜了。

       泛型類,是在實例化類的時候指明泛型的具體類型;泛型方法,是在調用方法的時候指明泛型的具體類型。

       定義泛型方法語法格式如下:

Java中的泛型方法詳解及簡單實例

            調用泛型方法語法格式如下:

Java中的泛型方法詳解及簡單實例

        說明一下,定義泛型方法時,必須在返回值前邊加一個<T>,來聲明這是一個泛型方法,持有一個泛型T,然后才可以用泛型T作為方法的返回值。

       Class<T>的作用就是指明泛型的具體類型,而Class<T>類型的變量c,可以用來創建泛型類的對象。

       為什么要用變量c來創建對象呢?既然是泛型方法,就代表著我們不知道具體的類型是什么,也不知道構造方法如何,因此沒有辦法去new一個對象,但可以利用變量c的newInstance方法去創建對象,也就是利用反射創建對象。

       泛型方法要求的參數是Class<T>類型,而Class.forName()方法的返回值也是Class<T>,因此可以用Class.forName()作為參數。其中,forName()方法中的參數是何種類型,返回的Class<T>就是何種類型。在本例中,forName()方法中傳入的是User類的完整路徑,因此返回的是Class<User>類型的對象,因此調用泛型方法時,變量c的類型就是Class<User>,因此泛型方法中的泛型T就被指明為User,因此變量obj的類型為User。

       當然,泛型方法不是僅僅可以有一個參數Class<T>,可以根據需要添加其他參數。

       為什么要使用泛型方法呢?因為泛型類要在實例化的時候就指明類型,如果想換一種類型,不得不重新new一次,可能不夠靈活;而泛型方法可以在調用的時候指明類型,更加靈活。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/qq_35101189/article/details/53820237

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 26uuu成人人网图片 | 国产午夜一区二区在线观看 | 久久se精品一区二区国产 | 97超pen个人视频公开视频视 | 星空无限传媒xk8027穆娜 | 扒开双腿疯狂进出爽爽动态图 | 亚洲天堂男人的天堂 | 美女尿口照片 | 精品一区二区三区波多野结衣 | 亚洲日本中文字幕在线2022 | 九九热在线观看视频 | 精品国产一区二区三区在线观看 | 无颜之月5集全免费看无删除 | 2015小明台湾永久区域免费 | 久热人人综合人人九九精品视频 | 成品人视频w免费观看w | 2021国产麻豆剧传媒新片 | 日韩 国产 欧美 精品 在线 | 国产欧美一区二区成人影院 | 国产成人一区二区三区影院免费 | 欧美一级二级片 | 奶茶视频官网免费 | 亚洲高清在线天堂精品 | 暖暖日本高清 | 成人免费公开视频 | 亚洲精品卡一卡2卡3卡4卡 | 久久不卡免费视频 | 欧美xxoo做爰猛烈视频 | 亚洲天堂男人网 | 国产91精品在线观看 | 色综合久久丁香婷婷 | 成人在线av视频 | 亚洲欧美精品一区二区 | 骚虎最新网址 | 欧美在线视频免费播放 | 欧亚尺码专线欧洲s码wmy | 午夜伦理:伦理片 | 国产精品66福利在线观看 | 国产午夜成人无码免费看 | 青山葵在线 | 精品视频 九九九 |