cari

Rumah  >  Soal Jawab  >  teks badan

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

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

迷茫迷茫2824 hari yang lalu658

membalas semua(1)saya akan balas

  • PHPz

    PHPz2017-04-17 17:26:05

    Cara penulisan seperti List list = getType1List(); ini ialah cara Java digunakan untuk menulisnya sebelum tiada generik Cara penulisan ini adalah jenis tidak selamat Memandangkan tiada parameter jenis, apa-apa jenis yang dimasukkan ke dalamnya boleh dihimpun dan diluluskan .

    Selepas mempunyai generik, biasanya disyorkan untuk menulis dengan generik dan menggunakan parameter jenis List<Object> list = getType1List();Sama seperti ini, pengkompil akan menyemak sama ada jenis yang dimasukkan adalah konsisten dengan parameter jenis Jika ia tidak konsisten, pengkompil akan melaporkan ralat.

    balas
    0
  • Batalbalas