色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Java泛型的編譯問題

瀏覽:102日期:2023-12-09 08:29:30

問題描述

源代碼如下跳至下面提示符,這段代碼顯然是無法編譯的

我認為一個原因是

BoundedEcho<String> stringEcho = new BoundedEcho<String>();

這里的String無法繼承Number,他不是String的子類?這樣理解對么?

然后另一個問題是,最后那段我傳入了一個new BoundedEcho<Integer> object, 而且他是BoundedEcho<T>的, 為什么這里會報錯呢?

是否將BoundedEcho改為public class BoundedEcho<? extends Number> {...}就對了?

源代碼在這里

public class BoundedEcho<T extends Number> { public T echo(T value) {return value; } public BoundedEcho<T> echo(BoundedEcho<T> value) {return value; }}

public class BoundedEchoChamber{ public static void main(String[] args) {BoundedEcho<Number> numberEcho = new BoundedEcho<Number>();numberEcho.echo(10);numberEcho.echo(10d);numberEcho.echo(10f);numberEcho.echo(10L); BoundedEcho<String> stringEcho = new BoundedEcho<String>();numberEcho.echo(new BoundedEcho<Integer>());numberEcho.echo(new BoundedEcho<Double>());numberEcho.echo(new BoundedEcho<Float>());numberEcho.echo(new BoundedEcho<Long>()); }}

問題解答

回答1:

問題出在這兩句

public BoundedEcho<T> echo(BoundedEcho<T> value) {return value; } BoundedEcho<Number> numberEcho = new BoundedEcho<Number>();

實例化的時候你把T聲明成了Number,之后調用就必須是BoundedEcho<Number>。原因是BoundedEcho<Integer>等類型和BoundedEcho<Number>是不同的類,并不存在繼承關系。

標簽: java
相關文章:
主站蜘蛛池模板: 国产成人综合欧美精品久久 | 中文字幕一二三区乱码老 | 另类自拍 | 6一10周岁毛片免费 6一12呦女精品 | 久久久久爽亚洲精品 | 欧美日本一区二区三区 | 色多多最新地址福利地址 | 暖暖日本在线播放 | 欧美一级性视频 | 日本aaaa级片| 久久久久久久久久综合情日本 | 亚洲国产成人麻豆精品 | 日日摸日日碰夜夜97 | 99久久免费中文字幕精品 | japanese乱子另类 | 国产精品一区在线播放 | a色在线 | 国产在线观看一区二区三区四区 | 精品在线一区二区 | 91久久亚洲国产成人精品性色 | 99久久精品国产一区二区三区 | 久草天堂 | 免费在线精品视频 | 最新中文字幕一区二区乱码 | 亚洲精品国产精品国自产观看 | 成人网18免费网 | 国产午夜精品理论片影院 | 欧美成人免费夜夜黄啪啪 | 精品久久久中文字幕一区 | 99免费在线观看视频 | 女初高中福利视频在线观看 | 美女被免费网站视频软件 | 日产日韩亚洲欧美综合搜索 | 毛片视频网站在线观看 | 成人在线免费观看 | 一区二区精品在线观看 | 免费播放特黄特色毛片 | 亚洲精品视频专区 | 久久99国产亚洲精品 | 国产a网站 | 亚洲成人影院在线观看 |