Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: DRANXZ88 en 02 de Junio 2016, 23:51

Título: Ejercicios java desde cero con superclases y subclases y sobreescribir CU00692B
Publicado por: DRANXZ88 en 02 de Junio 2016, 23:51
Ejercicio CU00692B del tutorial de programación java desde cero:

Clase principal main

Código: [Seleccionar]
package ejercicioscu00692b;

public class EjerciciosCu00692b {

    public static void main(String[] args) {
        Profesor profesor = new Profesor();
        profesor.setNombre("Pedro");
        profesor.setEdad(50);
        profesor.setAnosConsolidados(424);
        profesor.obtenerSalarioBase();
       
        ProfesorEmerito profesorEmerito = new ProfesorEmerito("Julio", 40, 12);
        profesorEmerito.setAniosEmerito(10);
        profesorEmerito.obtenerSalarioBase();
    }

}


Super clase profesor

Código: [Seleccionar]
package ejercicioscu00692b;

public class Profesor {

    private String nombre;
    private int edad;
    private int aniosConsolidados;

    public Profesor() {
    }

    public Profesor(String nombre, int edad, int aniosConsolidados) {
        this.nombre = nombre;
        this.edad = edad;
        this.aniosConsolidados = aniosConsolidados;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public int getEdad() {
        return edad;
    }

    public void setEdad(int edad) {
        this.edad = edad;
    }

    public int getAnosConsolidados() {
        return aniosConsolidados;
    }

    public void setAnosConsolidados(int aniosConsolidados) {
        this.aniosConsolidados = aniosConsolidados;
    }

    public void obtenerSalarioBase() {
        double valor;
        valor = (755 + getAnosConsolidados()) * 33.25;
        System.out.println("El profesor de nombre " + getNombre() + " de edad " + getEdad() + " con años de consolidacion "
                + getAnosConsolidados() + " tiene un salario base de " + valor);
    }
}


Subclase profesor emerito

Código: [Seleccionar]
package ejercicioscu00692b;

public class ProfesorEmerito extends Profesor {

    private int aniosEmerito;

    public ProfesorEmerito() {
        super();
        aniosEmerito = 0;
    }

    public ProfesorEmerito(String nombre, int edad, int aniosConsolidados) {
        super(nombre, edad, aniosConsolidados);
        aniosEmerito = 0;
    }

    public int getAniosEmerito() {
        return aniosEmerito;
    }

    public void setAniosEmerito(int aniosEmerito) {
        this.aniosEmerito = aniosEmerito;
    }

    public void obtenerSalarioBase() {
        super.obtenerSalarioBase();
        double valor1;
        double valor2;
        double salario;
        valor1 = (755 + getAnosConsolidados()) * 33.25;
        valor2 = 47.80 * getAniosEmerito();
        salario = valor1 + valor2;
        System.out.println("El profesor de nombre " + getNombre() + " de edad " + getEdad() + " con años de consolidacion "
                + getAnosConsolidados() + " con año de emerito  " + getAniosEmerito() + " tiene un salario total de " + salario);

    }
}
Título: Re:Ejercicios de java desde cero (CU00692B).
Publicado por: Dimitar Stefanov en 06 de Junio 2016, 14:40
Buenas, DRANXZ88.

Has sobreescrito bien el método en la subclase. Sólo comentarte que el ejercicio decía que el método "obtenerSalarioBase" tiene que ser de tipo "double".

Saludos :)