ProgramaçãoLinguagens de programação
- (FCC 2013)
Analise a classe a seguir retirada de uma aplicação Java que contém as classes Empregado.java, Diarista.java e Start.java. A classe Start.java possui o método main: package geral; public class Diarista extends Empregado{ private int diasTrabalhados; public Diarista(int diasTrabalhados, int id, String nome, double valorReferencia) { super(id, nome, valorReferencia); this.diasTrabalhados = diasTrabalhados; } public int getDiasTrabalhados() { return diasTrabalhados; } public void setDiasTrabalhados(int diasTrabalhados) { this.diasTrabalhados = diasTrabalhados; } @Override public double obterSalario(){ return super.getValorReferencia() * diasTrabalhados; } public double obterSalario(double percentualAcrescimo){ double salario= this.obterSalario(); double salarioReajustado = salario + salario * percentualAcrescimo /100; return salarioReajustado; } public double obterSalario(double adicional, double desconto){ return this.obterSalario() + adicional - desconto; } } Analisando o código apresentado é possível concluir que
A) essa classe está incorreta, pois não é possível criar diversos métodos com o mesmo nome, como é o caso do método obterSalario.
B) o método obterSalario() foi sobrescrito da classe Empregado
C) a instrução super(id, nome, valorReferencia); passa os valores contidos nas variáveis locais id, nome e valorReferencia para o método chamado super, da classe Empregado.
D) a instrução super.getValorReferencia() chama o método getValorReferencia() da classe Start.java, a classe principal que inicializa a aplicação.
E) a existência de vários métodos na classe Diarista com o nome obterSalario caracteriza um conceito conhecido como sobrescrita de métodos.
Próximo:
EXERCÍCIOS - Exercício 364
Vamos para o Anterior: Exercício 362
Tente Este: Exercício 307
Primeiro: Exercício 1
VOLTAR ao índice: Programação