<strike id="cakm0"></strike>
  • <button id="cakm0"><dl id="cakm0"></dl></button>
  • <samp id="cakm0"><tbody id="cakm0"></tbody></samp>
    <samp id="cakm0"><pre id="cakm0"></pre></samp><ul id="cakm0"></ul>
    <strike id="cakm0"></strike>
    <li id="cakm0"></li>
  • <ul id="cakm0"></ul>
  • 更多精彩內容,歡迎關注:

    視頻號
    視頻號

    抖音
    抖音

    快手
    快手

    微博
    微博

    java generic

    文檔

    java generic

    javageneric(泛型):一般類型,也可以為任何類型,泛型的本質是“參數化類型”,即所操作的數據類型被指定為一個參數,泛型是在JDK1.5中引入的特性。
    推薦度:
    導讀javageneric(泛型):一般類型,也可以為任何類型,泛型的本質是“參數化類型”,即所操作的數據類型被指定為一個參數,泛型是在JDK1.5中引入的特性。

    很多朋友都想知道java generic是什么?下面就一起來了解一下吧~

    java generic(泛型):一般類型,也可以為任何類型,泛型的本質是“參數化類型”,即所操作的數據類型被指定為一個參數,泛型是在JDK1.5中引入的特性。

    泛型提供了編譯時類型安全檢測機制,該機制允許程序員在編譯時檢測到非法的類型,而不是在運行時才出現錯誤。在實際編程中,會出現很多這樣的情況:同樣的方法,只是數據類型不同。現在如果想申明一個Box類,可以存放所有基本數據類型包裝類的對象,可以有以下寫法:

    public?class?Box?{
    ????private?Integer?object1;
    ????public?void?set(Integer?object1)?{?this.object1?=?object1;?}
    ????public?Integer?get()?{?return?object1;?}
    ????private?Double?object2;
    ????public?void?set(Double?object2)?{?this.object2?=?object2;?}
    ????public?Double?get()?{?return?object2;?}
    }

    這樣編程,會出現大量的冗余代碼,大家都知道Java中的所有類都繼承于Object類,根據“里式替換原則”,可以寫成這樣:

    public?class?Box?{
    ????private?Object?object;
    ????public?void?set(Object?object)?{?this.object?=?object;?}
    ????public?Object?get()?{?return?object;?}
    }

    既然申明了Object類型,意味著除了8個原始數據類型,還可以傳遞其他任意類型。如果set了一個Integer對象,get用作String類型,程序在運行時會報錯,但是卻能通過編譯的類型檢查,將上面的Box類改用泛型來實現就可以很好的解決這個問題。

    /**
    ?*?Generic?version?of?the?Box?class.
    ?*?@param??the?type?of?the?value?being?boxed
    ?*/
    public?class?Box?{
    ????//?T?stands?for?"Type"
    ????private?T?t;
    ????public?void?set(T?t)?{?this.t?=?t;?}
    ????public?T?get()?{?return?t;?}
    }
    public?static?void?main(String[]?args)?{
    ????Box?integerBox?=?new?Box();
    ????Box?stringBox?=?new?Box();
    ????integerBox.add(new?Integer(10));
    ????stringBox.add(new?String("泛型測試"));
    ????System.out.printf("整型值為?:%d\n\n",?integerBox.get());
    ????System.out.printf("字符串為?:%s\n",?stringBox.get());

    }使用泛型有的好處:編譯時強類型檢查、無需手動進行類型轉換、可以實現復用,編寫通用算法。

    以上就是小編今天的分享,希望可以幫到大家。

    文檔

    java generic

    javageneric(泛型):一般類型,也可以為任何類型,泛型的本質是“參數化類型”,即所操作的數據類型被指定為一個參數,泛型是在JDK1.5中引入的特性。
    推薦度:
    為你推薦
    資訊專欄
    熱門視頻
    相關推薦
    java enterprise java environment java epoll java error java escape java event java exchange java execute 微信群怎么找 怎么導出微信聊天記錄 蘋果手機怎么恢復出廠設置 qq怎么清理緩存和垃圾清理 朋友圈怎么轉發 微信分組怎么刪除 兩個excel如何獨立顯示 excel怎么排序 計算機管理怎么打開 java jep java jetty java jit java enhancer java generator java future java encapsulation java empty java email java ehcache java echarts java formatter java ecc加密 java fork java foreach循環 java ear java flume java dynamic java dto java drools java flink java dowhile java flatmap
    Top 最新69堂国产成人精品视频| 国产精品99久久久久久猫咪| 久久香蕉超碰97国产精品| 国产精品成人观看视频网站| 久热爱精品视频在线| 亚洲精品中文字幕无码AV| 精品视频在线免费观看| 国产精品无码专区在线观看| 尤物国产精品福利三区| 国产精品1024永久免费视频| 久久夜色精品国产嚕嚕亚洲av| 国产高清在线精品一区二区三区 | 亚洲精品线在线观看| 国产精品第一区第27页| 国产美女精品三级在线观看| 国产精品臀控福利在线观看| 亚洲精品福利视频| 亚洲AV无码成人精品区天堂 | 国产精品特黄毛片| 精品国产一区二区三区香蕉| 91大神精品全国在线观看| 香蕉久久夜色精品升级完成| 中国精品18videosex性中国| 国产一区麻豆剧传媒果冻精品| 亚洲国产精品一区二区第一页免| 国产精品91在线播放| 日本精品久久久久久福利| 欧美日韩精品不卡在线观看| 一本色道久久88—综合亚洲精品| 国产精品久久亚洲不卡动漫| 久久久精品久久久久三级| 91在线精品中文字幕| 91久久精品国产91久久性色也| 久久99精品久久久久久久野外| 久久精品99久久香蕉国产| 久久成人国产精品二三区| 中文字幕精品亚洲无线码一区| 亚洲中文久久精品无码| 日产精品一线二线三线京东| 国产亚洲精品一品区99热| 国产精品第12页|