最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

千鋒教育Java入門全套視頻教程(java核心技術,適合java零基礎,Java

2023-07-19 21:55 作者:永遠向上青年  | 我要投稿

泛型的學習與理解

1.為什么要使用泛型?

集合的特點是彌補了數(shù)組中的某一個不足:數(shù)組中元素的數(shù)據(jù)類型必須是一致的。

在開發(fā)中,更加傾向于讓集合只存一種數(shù)據(jù)類型,單一職責原則。

通過使用泛型,約束了集合中元素的數(shù)據(jù)類型,此時防止數(shù)據(jù)類型的多樣化導致程序的錯誤。

2.泛型的好處

  • 泛型可以在編譯時幫助我們檢查數(shù)據(jù)類型
  • 泛型可以減少數(shù)據(jù)類型轉換,自動轉換

3.泛型的形式

示例:LinkedList<Integer> list=new LinkedList<Integer>();

<Integer>就是泛型,可以在<>中指定集合的數(shù)據(jù)類型,其中后一個<>中的數(shù)據(jù)類型是可以省略的

4.Java和C# 中泛型的區(qū)別

  • Java的泛型是可擦除的,簡單地說,java的泛型是只存在于源碼中,編譯后就沒有了,是一種語法糖。(語法糖:計算機語言中添加的某種語法,這種語法對語言的功能并沒有影響,但是更方便程序員使用。通常來說使用語法糖能夠增加程序的可讀性)
  • C#的泛型編譯后仍然是泛型。(兩者的底層實現(xiàn)是完全不同的)

補充說明:兩種語言中的泛型的區(qū)別的原因是Java是一門向下兼容的語言,要保證無論如何更新版本,都可以運行之前版本的代碼,Java語言的開發(fā)人員為了在1.5版本中推出泛型并兼容之前的4個版本,才專門設計了現(xiàn)在的這種實現(xiàn)形式;而C#在推出泛型時才更新到第二個版本,使用人數(shù)不多,所以語言的開發(fā)者直接不需要考慮版本1的使用者,推出全新的泛型即可。


5.個人對泛型的理解

用通俗的語言講,開始寫代碼的時候不知道集合中具體放的什么類型的數(shù)據(jù),但又要對數(shù)據(jù)類型進行限制,所以使用泛型類,這樣后面實際調用該集合的時候再指定限制的類型即可。

又因為開始在數(shù)據(jù)類型不確認的時候需要寫方法,但是泛型類的數(shù)據(jù)無法進行實例化(因為java中的泛型是可擦除的,是一種語法糖),所以通過Class類new出對象clazz用在方法中作為參數(shù),同時對Class通過泛型進行數(shù)據(jù)類型限制,保證和前面new的集合中的數(shù)據(jù)類型一致。

最終實現(xiàn)在不確定數(shù)據(jù)類型的情況下對集合中的數(shù)據(jù)類型進行限制,并可以在不確定數(shù)據(jù)類型的情況下寫方法。



千鋒教育Java入門全套視頻教程(java核心技術,適合java零基礎,Java的評論 (共 條)

分享到微博請遵守國家法律
敦化市| 高唐县| 灵寿县| 新竹市| 乌恰县| 垦利县| 都昌县| 汽车| 泸定县| 绥棱县| 宁远县| 土默特左旗| 曲靖市| 邢台市| 武隆县| 虹口区| 文昌市| 林口县| 庆安县| 互助| 分宜县| 洞头县| 新乐市| 介休市| 河津市| 陇南市| 江都市| 龙井市| 大宁县| 朝阳市| 淮北市| 萝北县| 洞口县| 新源县| 个旧市| 屏东县| 哈密市| 临潭县| 自贡市| 奎屯市| 颍上县|