ExpertiDict

Java · Intermediário · Português · Técnico

método genérico

/ˈmɛtodu ʒeˈnɛɾiku/substantivo

Método que declara o próprio parâmetro de tipo antes do retorno, como static <T> T primeiro(List<T> l), e funciona com vários tipos mantendo a segurança.

Onde usar

Aparece em utilitários como Collections.max e em Optional.map. O compilador infere o T pelos argumentos.

Em código

static <T> T primeiro(List<T> lista) {
  return lista.get(0);
}
String s = primeiro(List.of("a", "b"));
int n = primeiro(List.of(7, 8)); // sem cast

Exemplos

Faz um método genérico em vez de duplicar para String e Integer.

O método estático precisa declarar o próprio T.

Cuidado

Não confunda o <T> do método com o T da classe: um método estático não enxerga o T da classe, precisa declarar o seu.

Veja também

Todos os termos de Java