请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

java Number & Comparable

波波老师,注意到java里面weight泛型的写法是 Weight extends <Number & Comparable>

但是如果我交换顺序 <Weight extends Comparable & Number> 就会报错,看不懂原因 网上搜索也不知道怎么描述 特此来请教... 这是为什么吗

正在回答

1回答

因为Number是类,Comparable是接口。限定泛型的类型,如果泛型是某个类的子类,则这个父类必须写在前面。语法规定。。。:)


关于这个语法,相应的Java官方文档可以参考这里:https://docs.oracle.com/javase/tutorial/java/generics/bounded.html


注意Multiple Bounds部分的叙述:

If one of the bounds is a class, it must be specified first. 

For example:
Class A { /* ... */ }
interface B { /* ... */ }
interface C { /* ... */ }

class D <T extends A & B & C> { /* ... */ }

If bound A is not specified first, you get a compile-time error:

class D <T extends B & A & C> { /* ... */ }  // compile-time error


加油!:)

2 回复 有任何疑惑可以回复我~
  • 提问者 芒果和芒果柠檬 #1
    波波老师的回复速度!赞!感谢!
    回复 有任何疑惑可以回复我~ 2018-08-09 10:30:06
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信