Rumah  >  Soal Jawab  >  teks badan

Apakah perbezaan antara <T> T dan T dalam java?

Mengapa ralat dilaporkan? Bukankah pertama jenis T? Dan <T> Apakah perbezaan antara T dan T?

伊谢尔伦伊谢尔伦2712 hari yang lalu688

membalas semua(3)saya akan balas

  • 高洛峰

    高洛峰2017-05-17 10:09:21

    Jika anda mahukan jenis nilai pulangan kaedah getMax menjadi T, anda perlu mentakrifkan kaedah getMax seperti ini: getMax 方法的返回值类型为 T,就要这样去定义getMax方法:

    public T getMax()

    如果你希望 getMax 方法返回值的类型由调用者决定,那么就这么去定义 getMax

    public <A> A getMax() {
        //...
        return (A)result;
    }

    Jika anda mahu jenis nilai pulangan kaedah getMax ditentukan oleh pemanggil, kemudian tentukan kaedah getMax seperti ini:

    rrreee

    A di sini mestilah tidak sama dengan huruf T yang diisytiharkan dalam nama kelas.

    Ringkasnya, T dan <T> pada asasnya adalah dua kegunaan yang berbeza. 🎜

    balas
    0
  • P粉504247697

    Salam cikgu, saya ingin bertanya kenapa A mesti tidak sama huruf dengan T? Saya mencubanya dan ia berkesan.

    P粉504247697 · 2022-08-30 01:01:47
  • 阿神

    阿神2017-05-17 10:09:21

    Anda harus mengalih keluar <T> kedua
    <T> ialah untuk mentakrifkan generik dan T ialah menggunakan generik
    Anda perlu memahami kelas generik dan kaedah generik

    .

    Kelas <T> pada sebab dan <T> pada kaedah tidak sepatutnya muncul berulang kali, jika tidak, ia akan dianggap bahawa jenis generik telah ditakrifkan semula pada kaedah tersebut.

    balas
    0
  • Batalbalas