簡體   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