ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Herencia Java


Enviado por   •  9 de Octubre de 2013  •  1.068 Palabras (5 Páginas)  •  412 Visitas

Página 1 de 5

Herencia

________________________________________

Composición

En anteriores ejemplos se ha visto que una clase tiene datos miembro que son instancias de otras clases. Por ejemplo:

class Circulo {

Punto centro;

int radio;

float superficie() {

return 3.14 * radio * radio;

}

}

Esta técnica en la que una clase se compone o contiene instancias de otras clases se denomina composición. Es una técnica muy habitual cuando se diseñan clases. En el ejemplo diríamos que un Circulo tieneun Punto (centro) y un radio.

Herencia

Pero además de esta técnica de composición es posible pensar en casos en los que una clase es una extensión de otra. Es decir una clase es como otra y además tiene algún tipo de característica propia que la distingue. Por ejemplo podríamos pensar en la clase Empleado y definirla como:

class Empleado {

String nombre;

int numEmpleado , sueldo;

static private int contador = 0;

Empleado(String nombre, int sueldo) {

this.nombre = nombre;

this.sueldo = sueldo;

numEmpleado = ++contador;

}

public void aumentarSueldo(int porcentaje) {

sueldo += (int)(sueldo * aumento / 100);

}

public String toString() {

return "Num. empleado " + numEmpleado + " Nombre: " + nombre +

" Sueldo: " + sueldo;

}

}

En el ejemplo el Empleado se caracteriza por un nombre (String) y por un número de empleado y sueldo (enteros). La clase define un constructor que asigna los valores de nombre y sueldo y calcula el número de empleado a partir de un contador (variable estática que siempre irá aumentando), y dos métodos, uno para calcular el nuevo sueldo cuando se produce un aumento de sueldo (método aumentarSueldo) y un segundo que devuelve una representación de los datos del empleado en un String.(método toString).

Con esta representación podemos pensar en otra clase que reuna todas las características de Empleado y añada alguna propia. Por ejemplo, la clase Ejecutivo. A los objetos de esta clase se les podría aplicar todos los datos y métodos de la clase Empleado y añadir algunos, como por ejemplo el hecho de que un Ejecutivo tiene un presupuesto.

Así diriamos que la clase Ejecutivo extiende o hereda la clase Empleado. Esto en Java se hace con la clausula extends que se incorpora en la definición de la clase, de la siguiente forma:

class Ejecutivo extends Empleado {

int presupuesto;

void asignarPresupuesto(int p) {

presupuesto = p;

}

}

Con esta definición un Ejecutivo es un Empleado que además tiene algún rasgo distintivo propio. El cuerpo de la clase Ejecutivo incorpora sólo los miembros que son específicos de esta clase, pero implícitamente tiene todo lo que tiene la clase Empleado.

A Empleado se le llama clase base o superclase y a Ejecutivo clase

...

Descargar como (para miembros actualizados)  txt (5.7 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com