日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Java泛型(generic type),關(guān)于原生類型(raw type)

 一本正經(jīng)地胡鬧 2019-07-13
眾所周知,raw type(原生類型)這一概念是為了在Java推出泛型以后,依然兼容過去的代碼所發(fā)明的。因此,我們可以得出一條推論,就是假如一個類C已經(jīng)泛型化了,而你卻在使用它的raw type,那說明你壓根不知道它是個泛型的類,因此編譯器有必要提醒你,哎這里類型需要顯式轉(zhuǎn)換一下。

什么叫泛型化(generified type)呢?就以我上面貼的那段代碼為例。假如它是Java 5以前創(chuàng)建的類,那時候一定是這么寫的:

  1. public class SomeClass {
  2. List getListOfPropertyName() { ... }
  3. }

在Java 5以后,假如它一直沒有改成泛型的版本,那么調(diào)用它的人必須顯式地做類型轉(zhuǎn)換才能獲得List<String>:

  1. SomeClass obj = new SomeClass();
  2. List<String> list = (List<String>) obj.getListOfPropertyName();

假如后來這個類型后來被泛型化了:

  1. public class SomeClass<T> { // 類型名字不變
  2. List<String> getListOfPropertyName() { ... }
  3. }

調(diào)用的人還不知道它已經(jīng)泛型化了,因此還在使用raw type。那么編譯器就仍然按照泛型化之前的方式,提醒你顯式類型轉(zhuǎn)換。


作者:GuoGin

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多