Buenas Tardes,
Aquí dejo mi ejercicio del tema "CU00692B super invocar metodos superclases subclases java ejemplo basico" para su corrección:
Clase Profesor:
/**
* EJEMPLO DE HERENCIAS, MÉTODOS POLIMÓRFICOS Y USO DE SUPER PARA LLAMAR A MÉTODOS DE SUPERCLASE.<br>
* Esta Clase define una Superclase de la que "beberan" otras clases.<br>
* Clase 1 del Ejercicio del Tema "CU00692B super invocar metodos superclases subclases java ejemplo basico".
* @author Lorenzo Fernández Asensio
* @version 20151201.01
*/
public class Profesor_CU00692B {
// Inicialización de Atributos
private String nombre;
private int edad,
agnosConsolidados;
/**
* Constructor 1 del Producto. Atribututos sin asignación de Valores
* @param nombre El parámetro nombre define el Nombre del Profesor
* @param edad El parámetro edad define la edad del Profesor
* @param agnosConsolidados El parámetro agnosConsolidados define los años consolidados que lleva el Profesor
*/
public Profesor_CU00692B () {
nombre = "";
edad = 0;
agnosConsolidados = 0;
} // Cierre del constructor 1
/**
* Constructor 2 del Producto. Atribututos con asignación de Valores
* @param nombre El parámetro nombre define el Nombre del Profesor
* @param edad El parámetro edad define la edad del Profesor
* @param agnosConsolidados El parámetro agnosConsolidados define los años consolidados que lleva el Profesor
*/
public Profesor_CU00692B (String nombre, int edad, int agnosConsolidados) {
this.nombre = nombre;
this.edad = edad;
this.agnosConsolidados = agnosConsolidados;
} // Cierre del constructor 2
/**
* Método para establecer el Nombre del Profesor
* @param valorNombre El parámetro valorNombre define el valor que contendrá el Nombre
*/
public void setNombre(String valorNombre) {
nombre = valorNombre;
} // Cierre del método para establecer el Nombre del Profesor
/**
* Método para establecer la Edad del Profesor
* @param valorEdad El parámetro valorEdad define el valor que contendrá la Edad
*/
public void setEdad(int valorEdad) {
edad = valorEdad;
} // Cierre del método para establecer la Edad del Profesor
/**
* Método para establecer los Años Consolidados del Profesor
* @param valorAgnosConsolidados El parámetro valorAgnosConsolidados define el valor que contendrá los Años Consolidados
*/
public void setAgnosConsolidados(int valorAgnosConsolidados) {
agnosConsolidados = valorAgnosConsolidados;
} // Cierre del método para establecer la Edad del Profesor
/**
* Método para para obtener la Nombre del Profesor
* @return El Nombre del Profesor
*/
public String getNombre(){ return nombre; }
/**
* Método para para obtener la Edad del Profesor
* @return La Edad del Profesor
*/
public int getEdad(){ return edad; }
/**
* Método para para obtener los Años Consolidados del Profesor
* @return Los Años Consolidados del Profesor
*/
public int getAgnosConsolidados(){ return agnosConsolidados; }
/**
* Método para para obtener el Salario Base del Profesor
* @return El Salario Base del Profesor
*/
public double obtenerSalarioBase() {
return 725 + (agnosConsolidados * 33.25);
} // Cierre del método para obtener el Salario Base del Profesor
/**
* Método para mostar la Información del Profesor
*/
public void mostrarDatos() {
System.out.println ("Nombre: " + nombre);
System.out.println ("De: " + edad + " años");
System.out.println ("Con: " + agnosConsolidados + " años como Profesor Consolidado");
} // Cierre del método para mostrar información del Profesor
} // Cierre de la Clase
Clase Profesor Emerito:
/**EJEMPLO DE HERENCIAS, MÉTODOS POLIMÓRFICOS Y USO DE SUPER PARA LLAMAR A MÉTODOS DE SUPERCLASE.<br>
* Esta Clase define una Subclase que "bebe" de la Superclase Profesor_CU00692B.<br>
* Clase 2 del Ejercicio del Tema "CU00692B super invocar metodos superclases subclases java ejemplo basico".
* @author Lorenzo Fernández Asensio
* @version 20151201.01
*/
public class ProfesorEmerito_CU00692B extends Profesor_CU00692B {
//Campo específico de la subclase.
private int agnosEmerito;
/**
* Constructor 1 del Profesor. Atribututos sin asignación de Valores
* @param agnosEmerito El parámetro agnosEmerito define los años que lleva como Emerito el Profesor
*/
public ProfesorEmerito_CU00692B() {
super();
agnosEmerito = 0;
} // Cierre del constructor 1
/** Constructor 2 del Profesor. Atribututos con asignación de Valores
* @param agnosEmerito El parámetro agnosEmerito define los años que lleva como Emerito el Profesor
*/
public ProfesorEmerito_CU00692B(String nombre, int edad, int agnosConsolidados, int agnosEmerito) {
super(nombre, edad, agnosConsolidados);
this.agnosEmerito = agnosEmerito;
} // Cierre del constructor 2
/**
* Método para establecer los Años que lleva el Profesor como Emerito
* @param valorAgnosEmerito El parámetro valorAgnosEmerito define el valor de los Años como Emerito
*/
public void setAgnosEmerito(int valorAgnosEmerito) {
agnosEmerito = valorAgnosEmerito;
} // Cierre del método para establecer los Años que lleva el Profesor como Emerito
/**
* Método para para obtener los Años que lleva el Profesor como Emerito
* @return Los Años que lleva el Profesor como Emerito
*/
public int getAgnosEmerito() { return agnosEmerito;}
/**
* Método para para obtener el Salario Base del Profesor Emerito
* @return El Salario Base del Profesor Emerito
*/
public double obtenerSalarioBase() {
return super.obtenerSalarioBase() + (47.80 * agnosEmerito);
} // Cierre del método para obtener el Salario Base del Profesor
/**
* Método para mostar la Información del Profesor Emerito
*/
public void mostrarDatos() {
super.mostrarDatos();
System.out.println ("Más " + agnosEmerito + " años como Profesor Emerito");
} // Cierre del método para mostar la Información del Profesor
} //Cierre de la clase
Clase Test:
/**
* EJEMPLO DE HERENCIAS, MÉTODOS POLIMÓRFICOS Y USO DE SUPER PARA LLAMAR A MÉTODOS DE SUPERCLASE.<br>
* Esta Clase define una clase test para probar Herencias, Polimorfismos y uso de super para métodos.<br>
* Clase 3 del Ejercicio del Tema "CU00692B super invocar metodos superclases subclases java ejemplo basico".
* @author Lorenzo Fernández Asensio
* @version 20151201.01
*/
public class TestHerencia_CU00692B {
public static void main (String [ ] Args) {
// Se crea un objeto Profesor
// y se le pasan 3 parámetros que son gestionados por el constructor de la superclase Profesor
Profesor_CU00692B profesor1 = new Profesor_CU00692B ("Daniel", 51, 30);
// Se crea un objeto Profesor Emerito
// y se le pasan 4 parámetros. 3 son gestionados por el constructor de la superclase Profesor
// y 1 parámetro gestionado por el cosntructor de la subclase Profesor Emerito
Profesor_CU00692B emerito1 = new ProfesorEmerito_CU00692B("Marcos", 65, 42, 10);
// Se limpia la pantalla de la Consola
System.out.println("\f");
// Mostrar Datos
emerito1.mostrarDatos();
System.out.println ("Y con un Sueldo Base de: " + emerito1.obtenerSalarioBase());
System.out.println("");
profesor1.mostrarDatos();
System.out.println ("Y con un Sueldo Base de: " + profesor1.obtenerSalarioBase());
} //Cierre del main
} //Cierre de la clase
Espero vuestras correcciones,
Muchas Gracias,
Saludos,