<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 久99久热只有精品国产女同| 精品久久久久久久中文字幕| 久久一区二区精品综合| 四虎一影院区永久精品| 国产69精品久久久久观看软件| 久久亚洲精品视频| 国产99精品一区二区三区免费| 亚洲AV无码精品国产成人| 熟妇人妻VA精品中文字幕| 久久久精品无码专区不卡| 国产精品va一区二区三区| 久久中文字幕精品 | 国产精品亚洲四区在线观看 | 精品免费久久久久久成人影院 | 亚洲精品国产摄像头| 精品亚洲麻豆1区2区3区| 中文字幕日韩精品有码视频| 国产精品亚洲专区在线播放| 久久精品国产亚洲av天美18 | 亚洲国产精品专区在线观看 | 乱色精品无码一区二区国产盗| 天美传媒精品1区2区3区| 亚洲精品一级无码中文字幕| 国产精品亚洲片在线花蝴蝶 | 久久国产精品无码HDAV| 国内精品51视频在线观看| 久久久精品无码专区不卡| HEYZO无码综合国产精品| 国产精品国产三级国快看| 麻豆成人精品国产免费| 九九热线精品视频16| 亚洲欧美国产精品专区久久| 国产精品久久影院| 精品久久久无码21p发布| 久久久久se色偷偷亚洲精品av| 99re66热这里都是精品| 精品综合久久久久久888蜜芽| 99久久精品免费视频| 97福利视频精品第一导航| 久久久无码精品亚洲日韩京东传媒| 人妻少妇精品无码专区二区|