Considere o código abaixo, escrito na linguagem Java.
// Definição da classe Funcionário
class Funcionario {
protected String nome;
protected String cpf;
protected double salario;
public void setSalario (double valor){
this.salario = valor;
}
public double getBonificacao() {
return this.salario * 0.10;
}
}
// Definição da classe Gerente
class Gerente extends Funcionario {
private int senha;
private int numeroDeFuncionariosGerenciados;
public double getBonificacao() {
return super.getBonificacao() + 1000;
}
}
// Trecho de código que será executado:
public class Principal{
public static void main(String args[]){
Funcionario func = new Gerente();
func.setSalario(5000.0);
System.out.println("Bonificação = R$ " + func.getBonificacao());
}
}
Na execução do método “main” da classe “Principal”, será impresso na saída padrão