Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: pedro,, en 23 de Julio 2015, 21:09
-
Hola aquí les dejo la resolución de mi ejercicio.
El ejercicio pedía:
Considera que estás desarrollando un programa Java donde trabajas con la superclase Profesor y la subclase ProfesorEmerito. Crea el código para estas clases que cumpla los requisitos que indicamos.
Como atributos de la superclase tendremos nombre (String), edad (int) y añosConsolidados (int). Un método de la superclase será double obtenerSalarioBase () que obtendrá el salario base como (725 + el número de años consolidados multiplicado por 33.25).
En la subclase se trabajará con el campo adicional añosEmerito. Queremos hacer lo siguiente: sobreescribir el método obtenerSalarioBase () en la subclase para calcular el salario base del profesor emérito invocando mediante la palabra clave super al cálculo del salario base de Profesor y añadiéndole la cantidad de (47.80 * añosEmerito).
clase Profesor
public class Profesor{
private String nombre;
private int edad;
private int annosConsolidados;
public Profesor(){
nombre = "";
edad = 0;
annosConsolidados = 0;
}
public Profesor(String nombre, int edad, int annosConsolidados){
this.nombre = nombre;
this.edad = edad;
this.annosConsolidados = annosConsolidados;
}
public void setNombre (String nombre){ this.nombre = nombre; }
public void setEdad (int edad){ this.edad = edad; }
public void setAnnosConsolidado (int annosConsolidados){ this.annosConsolidados = annosConsolidados; }
public String getNombre(){ return nombre; }
public int getEdad(){ return edad; }
public int getAnnosConsolidados(){ return annosConsolidados; }
public void mostrarDatos(){
System.out.println("---------------------------------");
System.out.println("Nombre: " + nombre + "\nEdad: " + edad + "\nAños Consolidados: " + annosConsolidados);
}
public double obtenerSalarioBase(){
return (725 + annosConsolidados)*33.25;
}
}
clase ProfesorEmerito
public class ProfesorEmerito extends Profesor{
private int annosEmerito;
public ProfesorEmerito(){
super();
annosEmerito = 0;
}
public ProfesorEmerito(String nombre, int edad, int annosConsolidados, int annosEmerito){
super(nombre, edad, annosConsolidados);
this.annosEmerito = annosEmerito;
}
public void setAnnosEmerito(int annosEmerito){ this.annosEmerito= annosEmerito; }
public int getAnnosEmerito(){ return annosEmerito; }
public void mostrarDatos(){
super.mostrarDatos();
System.out.println("Años como Emerito: " + annosEmerito);
}
public double obtenerSalarioBase(){
return (super.obtenerSalarioBase() + (47.80 * annosEmerito));
}
}
clase TestProfesor
public class TestProfesor{
public static void main(){
Profesor profesorEmerito1 = new ProfesorEmerito("Pedro", 33, 22, 15);
Profesor profesorEmerito2 = new ProfesorEmerito("Juan", 66, 44, 27);
profesorEmerito1.mostrarDatos();
System.out.println("Sueldo anual: " + profesorEmerito1.obtenerSalarioBase());
profesorEmerito2.mostrarDatos();
System.out.println("Sueldo anual: " + profesorEmerito2.obtenerSalarioBase());
}
}
-
Hola Pedro has cumplido perfectamente con lo que pedía el ejercicio, mi enhorabuena.
Saludos
-
gracias por tu tiempo y los ánimos