【发布时间】:2017-06-14 14:51:49
【问题描述】:
IosPartner extends Partner
AndroidPartner extends Partner
我有这个代码:
Class<T> clazz = partnerStr.contains("itunes")? IosPartner.class : AndroidPartner.class;
Partner partnerToAdd = jsonUtility.toObject(partnerStr, clazz);
和
public <T> T toObject(String json, Class<T> clazz) {
if (json == null)
return null;
...
我得到一个编译错误:
Error:(64, 52) java: incompatible types: java.lang.Object cannot be converted to com.waze.sdkService.operations.uiDto.Partner
我应该如何修复我的代码以进行泛化?
【问题讨论】:
-
Class<T> clazz = partnerStr.contains("itunes")? IosPartner.class : AndroidPartner.class;也不应该编译,但消息会有所不同,因此您有多个问题。您应该更新您的问题以包含MCVE,即使它没有编译,但只需确保唯一的编译错误是您要询问的错误。就问题而言,没有足够的信息让我告诉你你想做什么。 -
T类是什么?它是另一个独立于jsonUtility期望的类型变量吗?