我正在攻读Java课程,我的文档将此方法标题作为通用示例。不幸的是,缺乏描述。有人可以通过这种打字来解释发生了什么吗?
public static <T extends Object & Comparable <? super T>> T max(T a, T b) {
...
...
...
}
谢谢!
答案 0 :(得分:1)
据我所知,
<T extends Object & Comparable <? super T>>
等同于:
<T extends Comparable<? super T>>
所以,这说:
T
,应与T
或与T
抽象的内容相媲美。
如果MyClass
声明为以下其中之一,则此结构会强制您选择类似MyClass
的T:
MyClass implements Comparable<MyClass>
MyClass implements Comparable<MySuperClass>
MyClass implements Comparable<Object>
但不允许:
MyClass implements Comparable<String>
MyClass implements Comparable<MyChildClass>
鉴于:MyChildClass extends MyClass extends MySuperClass extends Object
。