搜尋

首頁  >  問答  >  主體

java的List与List<object>什么区别?

项目中需要用一个List接多种List<T>
这样写List<Object> list = getType1List();编译不通过,提示获取的类型与指定的类型不匹配。
但是换成List list = getType1List();就能编译通过了。这是为什么呢?

迷茫迷茫2839 天前663

全部回覆(1)我來回復

  • PHPz

    PHPz2017-04-17 17:26:05

    List list = getType1List();這種寫法,是以前Java沒有泛型的時候的寫法,這種寫法是類型不安全的,由於沒有類型參數,所以往裡面放什麼類型都是可以編譯通過的。 List list = getType1List();这种写法,是以前Java没有泛型的时候的写法,这种写法是类型不安全的,由于没有类型参数,所以往里面放什么类型都是可以编译通过的。

    有了泛型以后一般都是推荐用泛型来写的,使用类型参数,List<Object> list = getType1List();

    有了泛型以後一般都是推薦用泛型來寫的,使用型別參數,List list = getType1List();就是像這樣,編譯器會檢查放入的型別是否和型別參數一致,不一致的話編譯器會報錯。 🎜

    回覆
    0
  • 取消回覆