改进泛型类型的调用方法

时间:2016-11-17 14:03:22

标签: java generics kotlin retrofit2

是否可以创建通用类型的调用 例如

@POST("/service/")
fun<T> startRequest(@Body loginReq: Any): Call<T>

然后就这样称呼它

val request = api.startRequest<MyModel_1>(loginReq)

当我这样写并运行方法时,它说:

java.lang.IllegalArgumentException: Method return type must not include a type variable or wildcard: retrofit2.Call<T>

2 个答案:

答案 0 :(得分:0)

尝试使用@JvmSuppressWildcards

注释功能

答案 1 :(得分:0)

Retrofit(2.6.3)在处理注释时需要在编译时知道类型。因此,如果Retrofit将来不再支持,我根本不可能使用通用。