1
resposta

Dúvida sobre o uso de generics

Olá pessoal. Eu sei que a dúvida descrita aqui não é objeto do escopo deste Curso inicial de Kotlin, porém caso alguém saiba e puder responder, muito obrigado, caso contrário se for o caso eu deleto o post sem problemas. Eu estou pesquisando mas ainda não achei a resposta, meu conhecimento em Kotlin vem todo deste primeiro curso que eu fiz aqui.

Estou migrando alguns códigos meus em Java para Kotlin, para testar algumas coisas... Tenho esta interface

interface SuccessListener<T> {
    fun onSuccess(obj: T)
}

E tento fazer o uso de uma implementação da mesma da seguinte forma:

//.....
        when {
            response.code() == 200 ->
                callback.successListener?.onSuccess(response.body())
//....

Este é o retorno de uma chamada Retrofit, mas está dando o seguinte erro de compilação:

Type Mismatch
Required: Nothing?
Found: Any?
Projected type SucccessListener<in Nothing?>? restricts use of Public abstract fun onSuccess(obj:T): Unit defined in.......

Bem, é isso, nem compila. Eu aguardo alguma gentil resposta, caso eu chegue em uma solução eu posto aqui e explico os pormenores. Obrigado a todos.

1 resposta

Fala Moises, tudo bem ?

Cara recomendo a leitura desse artigo aqui para conseguir entender melhor seu problema, tem algumas coisas que rolam de maneira mais sutil no kotlin comparado ao java.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software