我的問題是一個通用的語法問題。如this thread回答,我創建了抽象通用超類。如何正確地擴展泛型類?
public abstract class Translator <T extends OriginalText, V extends LanguageTranslation> {
public abstract V translate(T originalText);
}
現在,我無法定義子類。
public class ChineseToEnglishTranslator extends Translator<ChineseText, EnglishTranslation> {
@Override
public EnglishTranslation translate(ChineseText text) {
return null;
}
}
Eclipse返回錯誤:Bound mismatch: The type ChineseText is not a valid substitute for the bounded parameter <T extends OriginalText> of the type Translator<T,V>
。 ChineseText絕對是OriginalText的子類。我想要做什麼的語法?
' 「ChineseText絕對是一個子類OriginalText的」' - 證明這一點。向我們展示代碼。更好的是,給我們一個[SSCCE](http://sscce.org/)。如果'ChineseText'沒有擴展'OriginalText',我只會得到這個錯誤。 – Dukeling
@feder如果它是一個通用類型,則會發布'OriginalText'。 – TheKojuEffect