讓我先說明我的情況:JAVA:泛型類繼承和泛型類型繼承
我已經在第三方SDK,與通用型基類:
public abstract class BaseClass<T extends BaseDataType> {
public abstract class BaseDataType {xxx}
public abstract int getCount();
public abstract someMethod(T t);
}
在我商業環境,它延伸BaseClass
如下:
,我寫我的課:
public class MyClass extends MyGeneralBaseClass<MyDataType> {
@Override public someMethod(MyDataType type) {xxx}
}
public class MyDataType extends BaseClass.BaseDataType {
xxx
}
但代碼無法編譯。對不起,我旅行,我沒有我的IDE和開發工具,所以我不能粘貼錯誤。但我認爲如果你在一個IDE這樣的IntelliJ Idea中寫下來,它會給我遇到的錯誤。
那麼如何編寫這種情況:繼承泛型類型,並繼承使用泛型類的類。
我想要的是,MyClass
使用具體類MyDataType
而不是摘要BaseDataType
。
這正是我想要的。你會請我幫忙詳細解釋一下嗎?或者提供一些易於理解的文章網址。很多thx –
@McArthorLee基於'class MyClass extends MyGeneralBaseClass'我想你'MyGeneralBaseClas'有一個擴展'BaseDataType'的泛型類型參數。因此'MyGeneralBaseClas '。現在,由於'BaseClass'還需要一個擴展'BaseDataType'的類型參數,因此可以將'T'傳遞給它,從而爲您提供'class MyGeneralBaseClas extends BaseClass ' –
Eran
yes,you are right。但你的解釋是關於我的商業環境。你可以給一些通用的JAVA解釋。 thx –