Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] O que seria cada T na declaração do método?

Se eu preciso dizer que quem implementar minha interface precisa ter o método de escrever mensagem, eu passo apenas o tipo "String" antes do nome do método.

String escreverMensagem(String mensagem);

Porquê nesse caso eu precisei de 2? " <T> e T

<T> T obterDados(String json, Class<T> classe);

2 respostas
solução!

O nome do <T> é generics, isso é uma maneira de criar classes, interfaces e métodos que podem operar com diferentes tipos de dados sem perder a segurança de tipos. Eles foram introduzidos no Java 5 para fornecer um tipo mais seguro e flexível de programação.

O principal benefício dos generics é permitir que você escreva código que pode trabalhar com qualquer tipo, enquanto ainda mantém a segurança de tipos durante a compilação. Antes dos generics, os desenvolvedores muitas vezes usavam coleções (como List, Set, etc.) que armazenavam objetos do tipo Object, e isso poderia levar a problemas em tempo de execução devido a castings inseguros.

O <T> significa o tipo de dados, que pode ser qualquer tipo, como uma String, um Objeto, um int, um array entre outros.

Você precisou de 2 <T> e T.

O <T> na declaração do método é usado para indicar que o método é genérico e pode operar com diferentes tipos. A segunda ocorrência de T está associada ao tipo da classe que você passa como argumento para o método, e isso é utilizado para garantir que o tipo de retorno do método seja consistente com o tipo da classe fornecida.

Acho que entendi. Obrigado Edimilson!