av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java泛型的編譯問(wèn)題

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

問(wèn)題描述

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

我認(rèn)為一個(gè)原因是

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

這里的String無(wú)法繼承Number,他不是String的子類(lèi)?這樣理解對(duì)么?

然后另一個(gè)問(wèn)題是,最后那段我傳入了一個(gè)new BoundedEcho<Integer> object, 而且他是BoundedEcho<T>的, 為什么這里會(huì)報(bào)錯(cuò)呢?

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

源代碼在這里

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>()); }}

問(wèn)題解答

回答1:

問(wèn)題出在這兩句

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

實(shí)例化的時(shí)候你把T聲明成了Number,之后調(diào)用就必須是BoundedEcho<Number>。原因是BoundedEcho<Integer>等類(lèi)型和BoundedEcho<Number>是不同的類(lèi),并不存在繼承關(guān)系。

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 夜夜躁狠狠躁日日躁av | 国产精品久久久久久久久 | 四色永久访问 | 欧美国产在线视频 | 1级黄色片| 久久久久一区二区 | 丰满少妇在线观看网站 | 夜夜草av| 吃奶动态图 | 欧美精品在线观看 | 午夜理伦三级理论 | 97福利视频 | 久久精品国产亚洲 | 欧美日日日| 成人激情视频网 | 91在线观看视频 | 欧美精品国产 | 五月天婷婷综合网 | 黄色大片免费观看 | 亚洲永久精品视频 | 一区二区影视 | 天天干夜夜操 | 国产精品亚洲综合 | 性欧美69 | 在线视频福利 | 久操福利视频 | 黄片毛片在线观看 | 日韩精品视频免费在线观看 | 国产伦精品一区二区三区四区免费 | 午夜精品福利视频 | 激情五月婷婷 | 激情做爰呻吟视频舌吻 | 一区二区免费视频 | 亚洲女人毛茸茸 | 中文字幕欧美激情 | 亚洲黄色一级 | 国产欧美一区二区三区在线看蜜臀 | 黄色片在线观看视频 | 人人爱人人 | 91精品国产成人www | 欧美伊人久久 |