Questão FC266113
Observe o código em Java abaixo: public Employee(String n, double s, int year, int month, int day) { name = n; salary = s; LocalDate hireDay = LocalDate.of(year, month, day); } Com
Linguagens de Programação
IDECAN · 2022
Observe o código em Java abaixo:
public Employee(String n, double s, int year, int month, int day)
{
name = n;
salary = s;
LocalDate hireDay = LocalDate.of(year, month, day);
}
Como é possível perceber, o nome do construtor é o mesmo que o nome da classe. Esse construtor é executado quando você constrói objetos da classe Employee — dando aos campos de instância o estado inicial que você deseja que eles tenham.
Que código pode ser utilizado para criar uma nova instância de Employee:
- new ("James Bond", 100000, 1950, 1, 1)
- new Employee("James Bond", 100000, 1950, 1, 1)
- new public("James Bond", 100000, 1950, 1, 1)
- Employee("James Bond", 100000, 1950, 1, 1)
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
Ao executar new Employee("James Bond", 100000, 1950, 1, 1) você está invocando o construtor da classe Employee, cujo nome é igual ao da classe. A expressão new aloca um novo objeto e chama o construtor, retornando a referência ao objeto criado.
Os argumentos correspondem exatamente aos parâmetros do construtor: String para o nome, double para o salário e três int para ano, mês e dia. O literal inteiro 100000 é aceito por conversão para double (widening).
Internamente o construtor atribui os valores aos campos de instância e cria a data de admissão com LocalDate.of(year, month, day), inicializando o estado do objeto conforme esperado.
Conteúdo do catálogo FC Concursos · Atualizado em