Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/07/2010, 12:31
carmen_iriarte
 
Fecha de Ingreso: junio-2010
Mensajes: 24
Antigüedad: 13 años, 10 meses
Puntos: 0
ayuda con polimorfismo en java

buenas tardes, lo que pasa es que tengo un programa en java sobre el polimorifsmo, pero no logro entenderlo el compilada y todo, lo que pasa es que tengo que explicarlo tanto en php como en java, en php si lo entiendo, pero en java nop, no entiendo dond se ejecuta el polimorfismo en java en este programa?bueno es qtampoco tengo mucha experiencia con java, sera qm pueden ayudar a explicarmelo? les paso el codigo qtengo en java....

package TALLER;
//clase que hereda de la clase padre (empleado)

public class Asalariado_1 extends Empleado_1 {
public float salario; //Salario anual
public float preparoPago() {
System.out.println("Calculando el pago del salario para " + nombre);
return (salario/52);
}
}
--------------------------------------------------------------------
package TALLER;
// Esta es la clase de la cual van a heredar las demas

public class Empleado_1 {
public String nombre;
public String direccion;
public int cedula;

public void envioCheque() {
System.out.println("Enviar cheque a " + nombre + " " + direccion);
}
}
---------------------------------------------------------
package TALLER;
//clase que hereda de la clase padre (empleado)

public class PorComision extends Empleado_1{
public float porcentaje; // porcentaje de comision sobre ventas totales
public float ventasTotales; //total de ventas realizadas

public float preparoPago() {
System.out.println("Calculando el pago por comision para " + nombre);
float pago = ventasTotales * porcentaje;
return pago;
}
}
----------------------------------------------------------
package TALLER;
// clase que hereda de la clase padre (empleado)

public class Porhoras_1 extends Empleado_1 {
public float tarifaHora; //tarifa de pago
public float horasTrabajadas; //horas trabajadas semanalmente
public float preparoPago() {
System.out.println("Calculando el pago por horas para " + nombre);
float pago = 0.0F;
if(horasTrabajadas <= 40)
{
pago = tarifaHora * horasTrabajadas;
}
else //Necesita calcular el sobretiempo
{
pago = (tarifaHora * 40) + (tarifaHora * (horasTrabajadas - 40) * 1.5F);
}
return pago;
}
}
----------------------------------------------------------------------
package TALLER;
// demostracion de la herencia en la POO
public class Demo {
public static void main(String [] args) {

System.out.println("Instanciando un empleado tipo Asalariado");
Asalariado_1 s = new Asalariado_1();
s.nombre = "Pedro Perez";
s.direccion = "Caracas";
s.cedula = 7654321;
s.salario = 100000.00F;

System.out.println("Instanciando un empleado tipo porHoras");
Porhoras_1 h = new Porhoras_1();
h.nombre = "Luis Ordaz";
h.direccion = "Guatire";
h.cedula = 1111111;
h.tarifaHora = 10.00F;
h.horasTrabajadas = 50;

System.out.println("Instanciando un empleado tipo porComision");
PorComision c = new PorComision();
c.nombre = "Juan Herrera";
c.direccion = "Guarenas";
c.cedula = 6555172;
c.ventasTotales = 250000f;
c.porcentaje = 0.15f;

System.out.println("Pagando a empleados");
System.out.println(s.nombre + " " + s.preparoPago());
System.out.println(h.nombre + " " + h.preparoPago());
System.out.println(c.nombre + " " + c.preparoPago());

System.out.println("Enviando cheques");
s.envioCheque();
h.envioCheque();
c.envioCheque();
}
}