Академический Документы
Профессиональный Документы
Культура Документы
HERENCIA
Cosa
Medio de telecomunicacin
Medio de
transporte
Objeto de
oficina
Coche
Vehculo areo
HERENCIA
Objetivos:
a) Definir el concepto de herencia entre clases
b) Interpretar el cdigo fuente de una aplicacin
Java donde aparecen clases relacionadas mediante
la herencia.
c) Construir una aplicacin Java que haga uso de la
herencia entre clases.
DEFINICIN
HERENCIA
HERENCIA
En otras palabras:
La idea bsica es poder crear clases basadas en clases
ya existentes.
Cuando heredamos de una clase existente, estamos reusando cdigo (mtodos y campos).
Podemos agregar mtodos y variables para adaptar la
clase a la nueva situacin.
HERENCIA
HERENCIA CLASES Y
SUPERCLASES
HERENCIA
HERENCIA
Empleado
Administrativo
Docente
HERENCIA
// SUPERCLASE Empleado
class Empleado {
private String nombre;
private int edad;
direccion=d;
}
void mostrarDatos() {
System.out.println("Nombre: "+nombre);
System.out.println("Edad: "+edad);
}
10
System.out.println("Direccion: "+direccion); }
HERENCIA
// la CLASE EXTENDIDA Docente, hereda todos los atributos y
funciones de la clase Empleado
class Docente extends Empleado {
}
11
HERENCIA
//la CLASE EXTENDIDA Administrativo, hereda todas los
atributos y mtodos de la clase Empleado, adems //se le aade
un nuevo atributo que es cargo.
12
HERENCIA
void setDatos(String n,int e,String d,String c)
{
super.setDatos(n,e,d);
cargo=c;
}
13
HERENCIA
void mostrarDatos()
{
super.mostrarDatos();
System.out.println("cargo: "+cargo);
}
}
14
HERENCIA
//CLASE DE PRUEBA QUE USA LAS CLASES Administrativo y Doce
class prueba
{ public static void main(String args[])
{ Docente doc=new Docente();
// el objeto doc tiene todas los atributos y funciones de la clase heredada Empleado
doc.setDatos("Carlos Sanchez",32,"Frias 34");
doc.mostrarDatos();
Administrativo admi=new Administrativo();
//admi, objeto de tipo Administrativo
admi.setDatos("Juan Perez",20,"bustillos","cajero");
admi.mostrarDatos();
}
15
HERENCIA
Utilizando constructores // SUPERCLASE Empleado
class Empleado {
private String nombre;
private int edad;
private String direccion;
Empleado(String n,int e,String d) {
//constructor que recibe 3 parmetros
nombre=n;
edad=e;
16
direccion=d; }
HERENCIA
void mostrarDatos()
{ System.out.println("Nombre: "+nombre);
System.out.println("Edad: "+edad);
System.out.println("Direccion: "+direccion); }
17
HERENCIA
// CLASE EXTENDIDA Administrativo
18
HERENCIA
//CLASE DE PRUEBA QUE USA LA CLASE Administrativo
class prueba {
public static void main(String args[])
{
19
admi.mostrarDatos(); } }
HERENCIA
Crear una clase trabajador con los atributos nombre y numero de
seguridad social.
Crear la subclase empleado con los atributos sueldo e impuestos.
El pago del empleado resulta de dividir la difeerencia de sueldo
impuestos sobre 12.
20
HERENCIA
public class trabajador {
private String nombre;
21
HERENCIA
public class consultor extends trabajador {
private int horas;
private double tarifa;
public consultor(String nombre, String NSS, int horas, double
tarifa)
{
super(nombre,NSS);
this.horas=horas;
this.tarifa=tarifa;
22
HERENCIA
public double calculopago()
{
return horas
* tarifa;
+ super.toString();
23
HERENCIA
public class empleado extends trabajador {
private double sueldo;
private double impuestos;
private final int pago=12;
24
HERENCIA
public double calcularopago() {
return (sueldo-impuestos)/ pago;
}
public String toString()
{
return "empleado"
+ super.toString();
25
HERENCIA
public class Herencia2 {
public static void main(String[] args) {
consultor x = new consultor("juan", "a123",10, 15);
System.out.println(x.toString());
System.out.println(x.calculopago());
}
26
27
HERENCIA