[英]Incompatible Generic Types: Cannot specify sub-type when using .class with generic type
[英]Incompatible Types when when using a list of generic class in an interface
我正在使用 java 1.8 並收到此不兼容錯誤。
public interface AVCR<T extends ACRI> {
List<CRTIL<T>> getLists();
}
public class CRTIL<T extends ACRI> {
}
class BV {
public AVCR<? extends ACRI> getDeafult() {
return;
}
public List<CRTIL<? extends ACRI>>
getTypeLists() {
return getDefault().getLists();
//Incompatible types
}
}
編譯器錯誤:發現
List<? extends CRTIL<? extends ACRI>>
並要求
List<CRTIL<? extends ACRI>>
我不確定我是否正確理解了您的問題,因為您沒有提供最小的工作示例,但我嘗試:
您可以按如下方式更改getTypeLists
的方法簽名
public List<? extends CRTIL<? extends ACRI>> getTypeLists()
因為您要返回類型列表? extends CRTIL<? extends ACRI>
? extends CRTIL<? extends ACRI>
? extends CRTIL<? extends ACRI>
而不是CRTIL<? extends ACRI>
CRTIL<? extends ACRI>
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.