我有一些內容,通過這個接口生成:通過接口覆蓋泛型方法
public interface Content {
void addListener(ContentListener<?> listener);
}
像GenericContent
:
public interface GenericContent extends Content {
@Override
void addListener(GenericContentListener listener);
}
這些ContentListener
和GenericContentListener
public interface ContentListener<T extends Content> {
void ping(T content);
}
public interface GenericContentListener extends ContentListener<GenericContent>
{
}
我的問題是即方法addListener
中到GenericContent
是雙錯誤:
方法
GenericContent
類型的addListener(ContentListener<GenericContent>)
必須重寫或實現的超類型方法名稱衝突:該方法
GenericContent
類型的addListener(ContentListener<GenericContent>)
具有相同的擦除作爲Content
類型的addListener(ContentListener<?>)
但不覆蓋它
我怎樣才能獲得相同的效果使用不同的技術?
內容類不是通用的 - 方法中T是什麼?應該輸入 – Bohemian