繁体   English   中英

公共接口ITMark <E extends Comparable<E> &gt;

[英]public interface ITMark<E extends Comparable<E>>

现在我想用该类实现此接口。 那我该怎么办呢?

public class TMark<E> implements ITMark{}

这是方法但是抛出错误

我得到以下信息:

ITMark is a raw type. References to generate type ITMark<E> should be parametrized

我正在Eclipse IDE中实现此代码

做这个:

public class TMark<SomeComparableClass> implements ITMark<SomeComparableClass> {
    // implement the methods of ITMark for type SomeComparableClass
}

您必须指定要实现这个可比类。 仅供参考,最常见的Java类型(例如Integer,String,Date等)都是可比较的。

ITMark是原始类型,因为它没有声明的通用参数。

如果您声明TMarkTMark<E extends Comparable<E>> implements ITMark<E> ,则它将不再是原始类型,因为您声明了其通用参数。

您省略了通用参数,即尖括号中包含的部分。 您需要类似:

public class TMark <E extends Comparable <E> implements ITMark<E>
{
    ...
}

对于特定的通用类型,您可以在尖括号内放置一个合适的“可比较”类型,例如:

public class IntegerTMark extends TMark <Integer>
{
    ...
}

有关泛型的良好介绍,请阅读Java教程, http: //java.sun.com/docs/books/effective/generics.pdf上约书亚·布洛赫(Joshua Bloch)的有效Java的免费章节以及https://上的许多关于泛型的文章。 /www.ibm.com/developerworks/java/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM