O mas bien explicar paso a paso como es que se ejecuto el código para llegar el mismo resultado. He aquí mi código. Hago la operación en una calculadora y no me da el resultado al ejecutarlo. Me podrían explicar paso a paso como llego ahí.
Funcionario
public class Funcionario {
private String nombre;
private String documentoIdentidad;
private double salario;
public double getBonificacion() {
return this.salario * 0.1;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getNombre() {
return nombre;
}
public void setDocumentoIdentidad(String documentoIdentidad) {
this.documentoIdentidad = documentoIdentidad;
}
public String getdocumentoIdentidad() {
return documentoIdentidad;
}
public void setSalario(double salario) {
this.salario = salario;
}
public double getSalario() {
return salario;
}
}
EditorVideo
public class EditorVideo extends Funcionario{
@Override
public double getBonificacion() {
return 200;
}
}
Designer
public class Designer extends Funcionario{
@Override
public double getBonificacion() {
return 150;
}
}
Control de Bonificación
public class ControleBonificacion {
private double suma;
public void registro(Funcionario e) {
this.suma += e.getBonificacion();
}
public double getSuma() {
return suma;
}
}
Y el Test
public class TestReferencias {
public static void main(String[] args) {
Gerente g1 = new Gerente();
g1.setNombre("Marcos");
g1.setSalario(5000.0);
EditorVideo ev = new EditorVideo();
ev.setSalario(2500.0);
Designer d = new Designer();
d.setSalario(2000.0);
ControleBonificacion controle = new ControleBonificacion();
controle.registro(g1);
controle.registro(ev);
controle.registro(d);
System.out.println(controle.getSuma());
}
}