对泛型类声明的澄清

时间:2014-11-20 11:21:43

标签: java generics

请解释这两个定义之间的区别:

public class Box<T implements Comparable<T>> 

public class Box<T> implements Comparable<T>

2 个答案:

答案 0 :(得分:6)

第一个甚至不会编译。它应该是public class Box<T extends Comparable<T>>。这意味着Box类具有实现Comparable<T>接口的泛型类型参数。

第二个意味着Box类具有泛型类型参数,此外Box<T>实现接口Comparable<T>

答案 1 :(得分:2)

在第一个定义中,类型T实现Comparable,在第二个定义中,类Box实现Comparable