Ayudantía Paulina Yánquez EII 147 2S2020
Ayudantía Paulina Yánquez EII 147 2S2020
Ayudantía Paulina Yánquez EII 147 2S2020
1. Información general
Semana: 19 al 22 de octubre
Objetivo: El objetivo de esta ayudantía es que el alumno sea capaz de identificar el uso de
Herencia e implementar de forma correcta las clases abstractas
Contenidos: Especificaciones de herencia y clase abstracta
2. Ejercicios
1. Una empresa multinacional necesita administrar su personal y para esto necesita una aplicación en
java que defina las siguientes clases:
La clase Personal que no puede ser instanciada, tiene como atributos un código de identificador
(String) de cada trabajador, un nombre (String) y un año de ingreso, además define un método
llamado obtenerSalario(). El personal puede ser de dos tipos:
- EmpleadoFijo: El cual tiene un salario fijo (int) y un porcentaje adicional (double) relativo a la
cantidad de años que lleva en la empresa. El método obtenerSalario() corresponde a la
multiplicación del salario fijo por el porcentaje adicional.
- EmpleadoAComisión: Este tipo de empleado tiene un salario mínimo correspondiente a 250000
pesos, un número de clientes captados y un monto por cada cliente captado(int). El método
obtenerSalario() corresponde a la suma del salario mínimo con la multiplicación de los clientes
captados y el monto por cliente.
Finalmente se encuentra la clase Empresa la cual maneja un arreglo de largo N del tipo clase Personal
(N entregado al momento de su instanciación) y un número total de empleados(int).
Se pide implementar en java lo siguiente:
a) La clase abstracta Personal con la definición de su respectivo método abstracto. Las clases
hijas EmpleadoFijo y EmpleadoAComision y finalmente la clase Empresa.
b) Implementar el método abstracto en las clases hijas obtenerSalario() con sus respectivas
definiciones.
c) El método public String empleadoConElMayorSueldo() en la clase Empresa, el cual retorna el
código del empleado con el mayor salario registrado en su matriz.
d) El método public String mayorPorcentajeAdicional() en la clase Empresa, el cual retorna el
código del empleado fijo con el mayor porcentaje adicional al salario fijo.
DESARROLLO:
Main:
package ayudantia9;
import java.io.*;
public class Ayudantia9
{
public static void main(String[] args) throws IOException
{
BufferedReader lector =new BufferedReader( new
InputStreamReader(System.in));
Empresa hola= new Empresa(58,100);
System.out.println("Ingrese una opción:");
System.out.println("1.-Empleado con mayor sueldo");
System.out.println("2.-Empleado con mayor porcentaje");
int opc= Integer.parseInt(lector.readLine());
switch (opc)
{
case 1:
System.out.println("El empleado con mayor sueldo es" +
hola.empleadoConElMayorSueldo());
break;
case 2:
System.out.println("El empleado con mayor porcentaje es" +
hola.mayorPorcentajeAdicional());
break;
}
}
}
Clase Empresa:
package ayudantia9;
Clase Personal:
package ayudantia9;
package ayudantia9;
Clase EmpleadoAComisión:
package ayudantia9;