Herencia:
La herencia es un mecanismo que permite la definición de una clase a partir de la definición de otra ya existente. La herencia permite compartir automáticamente métodos y datos entre clases, subclases y objetos.
La herencia está fuertemente ligada a la re utilización del código en la POO. Esto es, el código de cualquiera de las clases puede ser utilizado sin más que crear una clase derivada de ella, o bien una subclase.
Hay dos tipos de herencia: Herencia Simple y Herencia Múltiple.
La primera herencia simple como se indica que se pueden definir nuevas clases solamente a partir de una clase inicial; mientras que la segunda herencia multiple indica que se pueden definir nuevas clases a partir de dos o más clases iniciales.
java, sólo permite herencia simple.
Ejemplo de Herencia Simple:
El código correspondiente a
las tres clases de ejemplo anteriormente mencionadas está detallado en los
listados de código del 1 al 3:
Listado de
código 1
public
class Animal {
private String nombre;
private String sexo;
private String color;
public void comer(){
System.out.println("Estoy comiendo");
}
public void dormir(){
System.out.println("Estoy durmiendo");
}
}
Listado de
código 2
public
class Perro extends Animal{
public void ladrar(){
System.out.println("jau
jau");
}
}
Listado de
código 3
public
class Gato extends Animal{
public void maullar(){
System.out.println("miau");
}
}
Herencia Múltiple:
Java no soporta la herencia múltiple pero para
contrarrestar el no soporta la herencia múltiple en java se creó lo que se
llama interfaces que son clases especiales las cuales pueden implementar más de
una interface donde se pueden crear métodos que comparten dichas clases y para
poder usar esos métodos solo tenemos que implementar usando la palabra
implements implementar que es lo mismo que heredar siendo esta una forma
alternativa de la herencia múltiple.
La herencia múltiple es el mecanismo que permite al programador hacer clases derivadas a partir, no de una sola clase base, sino de varias. Para entender esto mejor, pongamos un ejemplo: Cuando ves a quien te atiende en una tienda, como persona que es, podrás suponer que puede hablar, comer, andar, pero, por otro lado, como empleado que es, también podrás suponer que tiene un jefe, que puede cobrarte dinero por la compra, que puede devolverte el cambio, etc
Ejemplo de herencia Múltiple:
public
interface Mascota {
public
abstract void jugar();
public
abstract void vacunar();
}
public
class canino {
public void
ladrar();
}
public class perro extends canino implements
Mascota {
public void
comer(){…}
public void
dormir(){…}
}
No hay comentarios:
Publicar un comentario