Mi versión del Ejercicio propuesto en la Entrega Nº92. Ejercicio CU00692B.
Clase Profesor
/**
* Clase Profesor
*
* @author (RaGa)
* @version (20150427)
*/
public class Profesor
{
// Declaración de campos de instancia.
private String nombre;
private int edad;
private int añosConsolidados;
/**
* Constructor 1 para objetos de clase Profesor
*/
public Profesor(String nombre, int edad, int añosConsolidados){
this.nombre=nombre;
this.edad=edad;
this.añosConsolidados=añosConsolidados;
}
/**
* Constructor 2 para objetos de clase Profesor
*/
public Profesor(){
nombre="";
edad=0;
añosConsolidados=0;
}
/**
* métodos setters
*/
public void setAñosConsolidados(int añosConsolidados){
this.añosConsolidados=añosConsolidados;
}
public void setNombre(String nombre){
this.nombre=nombre;
}
public void setEdad(int edad){
this.edad=edad;
}
/**
* métodos getters
*/
public int getAñosConsolidados(){
return añosConsolidados;
}
public String getNombre(){
return nombre;
}
public int getEdad(){
return edad;
}
/**
* métodos varios
*/
public String mostrarDatos(){
return ("\nNombre: "+nombre+", Edad: "+edad+", Años Consolidados: "+añosConsolidados+", ");
}
public double obtenerSalarioBase(){
return (725+(añosConsolidados*33.25));
}
}// fin de la clase
Clase ProfesorEmerito
/**
* Clase ProfesorEmerito
*
* @author (RaGa)
* @version (20150427)
*/
public class ProfesorEmerito extends Profesor
{
// Declaración de campos de instancia.
private int añosEmerito;
/**
* Constructor 1 para objetos de clase ProfesorEmerito
*/
public ProfesorEmerito(String nombre, int edad, int añosConsolidados, int añosEmerito){
super(nombre,edad,añosConsolidados);
this.añosEmerito=añosEmerito;
}
/**
* Constructor 2 para objetos de clase ProfesorEmerito
*/
public ProfesorEmerito(int añosEmerito){
super();
añosEmerito=añosEmerito;
}
/**
* métodos setters
*/
public void setAñosEmerito(int añosEmerito){
this.añosEmerito=añosEmerito;
}
/**
* métodos getters
*/
public int getAñosEmerito(){
return añosEmerito;
}
/**
* métodos varios
*/
public String mostrarDatos(){
return (super.mostrarDatos()+" Años Emérito: "+añosEmerito+", ");
}
public double obtenerSalarioBase(){
return (super.obtenerSalarioBase()+(47.80*añosEmerito));
}
}// fin de la clase
Clase TestHerencia6
import java.util.*;
/**
* Clase TestHerencia6
*
* @author (RaGa)
* @version (20150427)
*/
public class TestHerencia6
{
// Declaracion de variables de instancia.
/**
* Constructor de clase
*/
public TestHerencia6(){ //vacío
}
/**
* método main
*/
public static void main(){
ArrayList<Profesor> listaProfesoresAcademia;
listaProfesoresAcademia=new ArrayList<Profesor>();
// Carga de datos de Profesores
Profesor profe1 = new Profesor("Danilo Salazar Quintana",28,2);
Profesor profe2 = new ProfesorEmerito("Cándido Tolosa Martínez",63,28,3);
ProfesorEmerito profe3 = new ProfesorEmerito("María Rosa Díaz Díaz",60,27,2);
// Carga de ListaProfesoresAcademia
listaProfesoresAcademia.add(profe1);
listaProfesoresAcademia.add(profe2);
listaProfesoresAcademia.add(profe3);
// Muestra de ListaProfesoresAcademia
System.out.println("\fLista de Profesores de la Academia");
for (Profesor tmp:listaProfesoresAcademia){
System.out.println(tmp.mostrarDatos());
System.out.println("Salario Base= "+tmp.obtenerSalarioBase());
}
}// fin de main
}// fin de clase