FC ConcursosFC Concursos

Questão FC373237

Considere o método a seguir, que é parte de um programa Java. \(\underset{......}{I}\) { return 1; } Em condições ideais, para que esse método possa receber como para.metro um obje

Linguagens de Programação

FCC · 2023

Considere o método a seguir, que é parte de um programa Java.

 

\(\underset{......}{I}\) {

 

return 1;

 

}

 

Em condições ideais, para que esse método possa receber como para.metro um objeto genérico e retornar corretamente o valor 1, do tipo lnt, a lacuna \(I\) deve ser corretamente preenchida com

  1. public <T> int salvar (T obj)
  2. public T int salvarDados(Object obj)
  3. public int salvarDados(<T> obj)
  4. public <T> int salvarDados(<T> obj)
  5. public int salvar (GenericObject obj)
Mostrar resposta e comentário

Gabarito

A

Comentário do professor

public <T> int salvar(T obj) declara um método genérico em que o parâmetro de tipo T é introduzido especificamente para esse método. A sintaxe <T> vem antes do tipo de retorno e indica que T é uma variável de tipo que pode representar qualquer tipo de referência.


Dentro do método, T obj aceita um objeto de qualquer classe (tipos primitivos devem ser usados via boxing). Essa generalidade permite reutilizar o mesmo método para diferentes tipos sem perda de segurança de tipo em tempo de compilação.


O tipo de retorno int é independente do parâmetro genérico; devolver 1 é válido porque corresponde ao tipo primitivo int. Em suma, a declaração posiciona corretamente o parâmetro de tipo e o parâmetro do método, garantindo que o código compile e aceite objetos genéricos.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo