国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

java中的方法返回值使用泛型,實(shí)現(xiàn)靈活的返回值類型

這篇具有很好參考價(jià)值的文章主要介紹了java中的方法返回值使用泛型,實(shí)現(xiàn)靈活的返回值類型。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

??使用Mybatis框架的時(shí)候,想封裝一個(gè)底層JDBC控制器,用于提供和Mybatis交互的增刪改查接口(公用的接口),但由于公用的查詢方法可能是用戶自定義的任意一個(gè)和表對(duì)應(yīng)的java bean類型,所以要考慮怎么樣給調(diào)用者返回正確的返回值類型,不需要調(diào)用者自己強(qiáng)轉(zhuǎn)型的動(dòng)作(例如:返回Object類型給調(diào)用者,那么調(diào)用者就需要拿到這個(gè)Object類型進(jìn)行強(qiáng)轉(zhuǎn)型為表對(duì)應(yīng)的java bean類型)。

解決方案:
可以說(shuō)java提供的泛型 T 是非常實(shí)用強(qiáng)大的一個(gè)特性,雖然說(shuō)它是假的泛型(相對(duì)于C里面的泛型),我們可以考慮將方法的返回值設(shè)為泛型,因?yàn)榉盒褪窃谶\(yùn)行時(shí)才確定真正的類型,而并非在編譯時(shí)。

例子:

1. 服務(wù)提供者 函數(shù):?

//通過(guò)<T>聲明告訴JVM返回值定義一個(gè)泛型 T ???????

這里的T只是個(gè)占位符的效果,26個(gè)字母隨便寫(xiě)哪個(gè)字母都可以,但一定要是和< >里面相同的字母,這里使用T

public <T> T findList(String sqlID,Map<String,Object> params) {

String statement = "com.mybatis.mapping.userMapper."+sqlID;//映射sql的標(biāo)識(shí)字符串

return (T) this.session.selectList(statement, params);

}

2. 服務(wù)調(diào)用者 函數(shù):

//這里接收的類型聲明直接寫(xiě)真實(shí)的類型就可以,無(wú)需強(qiáng)制轉(zhuǎn)換

List<SubsHis> list = jdbc.findList("getSubsHisList", map);
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-459732.html

到了這里,關(guān)于java中的方法返回值使用泛型,實(shí)現(xiàn)靈活的返回值類型的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • java~用泛型來(lái)定義異常類型,避免方法調(diào)用時(shí)throws異常

    java~用泛型來(lái)定義異常類型,避免方法調(diào)用時(shí)throws異常

    我們一般在底層寫(xiě)方法時(shí),如果方法顯示throws異常,那么在調(diào)用時(shí),也需要將這個(gè)異常throws出來(lái),例如 調(diào)用時(shí) 如果調(diào)用時(shí)不顯示throws出異常,編譯器會(huì)報(bào)出錯(cuò)誤,如下圖 調(diào)用方法時(shí),不需要再throws Ex了,這種對(duì)調(diào)用者更友好,如圖 在第一個(gè)方法中,使用了泛型類型 來(lái)定義

    2024年02月21日
    瀏覽(20)
  • 深入理解Java泛型:編寫(xiě)靈活而安全的代碼

    1. 泛型的概念 泛型可以看作是參數(shù)化的類型,就像函數(shù)式編程中的高階函數(shù),它們可以接受多種類型的參數(shù)。在Java中,泛型主要用在類、接口和方法上。 2. 泛型的作用 類型安全 :泛型可以確保在編譯時(shí)就能發(fā)現(xiàn)類型錯(cuò)誤,而不是在運(yùn)行時(shí)。 代碼復(fù)用 :通過(guò)泛型,可以編寫(xiě)

    2024年04月14日
    瀏覽(35)
  • Java方法【返回類型】

    返回類型 定義方法在執(zhí)行結(jié)束后 是否有返回結(jié)果 ,描述它的 數(shù)據(jù)類型 (只能有一個(gè)) 方法在執(zhí)行結(jié)束后,有需要返回的數(shù)據(jù),用數(shù)據(jù)類型 ?(基本或引用數(shù)據(jù)類型都可以)? ? ? ? ? ? ? ? 1、如果 方法定義了 具體返回類型 ,那么就必須使用 return ,去返回?cái)?shù)據(jù) ; 2、當(dāng)

    2024年02月04日
    瀏覽(18)
  • 深入理解Java泛型:靈活、安全、可重用的編程利器

    深入理解Java泛型:靈活、安全、可重用的編程利器

    Java泛型是一項(xiàng)強(qiáng)大的編程特性,為程序員提供了一種靈活、類型安全、可重用的編碼方式。通過(guò)泛型,我們能夠編寫(xiě)更加通用、適應(yīng)多種數(shù)據(jù)類型的代碼,從而提高了代碼的靈活性和可維護(hù)性。在這篇博客中,我們將深入探討Java泛型的各個(gè)方面,并通過(guò)具體的例子來(lái)展示其

    2024年03月21日
    瀏覽(33)
  • Java實(shí)現(xiàn)方法接口入?yún)⑼瑫r(shí)包含文件、字段和對(duì)象等多種類型。HTTP請(qǐng)求返回415狀態(tài),Content type ‘a(chǎn)pplication/octet-stream‘ not supported錯(cuò)誤。

    Java實(shí)現(xiàn)方法接口入?yún)⑼瑫r(shí)包含文件、字段和對(duì)象等多種類型。HTTP請(qǐng)求返回415狀態(tài),Content type ‘a(chǎn)pplication/octet-stream‘ not supported錯(cuò)誤。

    方法一:對(duì)象不使用注解 使用Postman測(cè)試,直接將subject對(duì)象的字段填在key的位置 方法二:對(duì)象使用注解@RequestPart 使用Postman測(cè)試,將字段包裝在subject對(duì)象里,使用Content type:application/json的內(nèi)容類型 注:方法二在開(kāi)發(fā)本地測(cè)試執(zhí)行成功,但是在測(cè)試人員機(jī)子下不通過(guò),執(zhí)行報(bào)

    2024年02月12日
    瀏覽(25)
  • Scala中的類型檢查和轉(zhuǎn)換,以及泛型,scala泛型的協(xié)變和逆變

    說(shuō)明 (1) obj.isInstanceOf[T]:判斷 obj 是不是T 類型。 (2) obj.asInstanceOf[T]:將 obj 強(qiáng)轉(zhuǎn)成 T 類型。 (3) classOf 獲取對(duì)象的類名。 案例 1.說(shuō)明 (1)枚舉類:需要繼承 Enumeration (2)應(yīng)用類:需要繼承App 2. 案例 1.說(shuō)明 使用 type 可以定義新的數(shù)據(jù)數(shù)據(jù)類型名稱,本質(zhì)上就

    2024年02月10日
    瀏覽(23)
  • Java獲取泛型類型信息

    根據(jù)使用泛型位置的不同可以分為:聲明側(cè)泛型、使用側(cè)泛型。 聲明側(cè)的泛型信息被記錄在Class文件的Constant pool中以Signature的形式保存。而使用側(cè)的泛型信息并沒(méi)有保存。 聲明側(cè)泛型 聲明側(cè)泛型包括: 泛型類,或泛型接口的聲明 帶有泛型參數(shù)的成員變量 帶有泛型參數(shù)的方

    2024年02月09日
    瀏覽(27)
  • 【100個(gè) Unity實(shí)用技能】?? | C#泛型集合常用方法,查找符合要求的第一個(gè)元素并返回

    【100個(gè) Unity實(shí)用技能】?? | C#泛型集合常用方法,查找符合要求的第一個(gè)元素并返回

    老規(guī)矩,先介紹一下 Unity 的科普小知識(shí): Unity 是 實(shí)時(shí)3D互動(dòng)內(nèi)容創(chuàng)作和運(yùn)營(yíng)平臺(tái) 。 包括 游戲開(kāi)發(fā) 、 美術(shù) 、 建筑 、 汽車設(shè)計(jì) 、 影視 在內(nèi)的所有創(chuàng)作者,借助 Unity 將創(chuàng)意變成現(xiàn)實(shí)。 Unity 平臺(tái)提供一整套完善的軟件解決方案,可用于創(chuàng)作、運(yùn)營(yíng)和變現(xiàn)任何實(shí)時(shí)互動(dòng)的2D和

    2023年04月08日
    瀏覽(112)
  • 基于C#編程建立泛型Matrix數(shù)據(jù)類型及對(duì)應(yīng)處理方法

    基于C#編程建立泛型Matrix數(shù)據(jù)類型及對(duì)應(yīng)處理方法

    ????????上一篇文檔中描述了如何寫(xiě)一個(gè)VectorT類,本次在上一篇文檔基礎(chǔ)上,撰寫(xiě)本文,介紹如何書(shū)寫(xiě)一個(gè)泛型Matrix,可以應(yīng)用于int、double、float等C#數(shù)值型的matrix。 ????????本文所描述的MatrixT是一個(gè)泛型,具有不同數(shù)值類型Matrix矩陣構(gòu)造、新增、刪除、查詢、更改、

    2024年02月02日
    瀏覽(32)
  • Java中泛型和Object類型 初級(jí)進(jìn)階教程(一)

    在學(xué)習(xí)的過(guò)程中,常??吹侥硞€(gè)類或者接口等中使用 ListT, TestT,其中T的作用是什么呢? 1 在類中使用泛型 2 使用多個(gè)泛型 3 在類中使用泛型 4 在方法中使用泛型 5 限制泛型類型 6 通配符 (Wildcard) 總結(jié):泛型和Object類型之間的區(qū)別 類型安全: 泛型 T : 泛型提供了編譯時(shí)類型

    2024年02月01日
    瀏覽(29)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包