Herencia y polimorfismo

Qué es herencia?

La herencia es un mecanismo de reutilización de software que permite crear nuevas clases que adquieren los atributos y métodos de alguna clase predefinida, es decir, una clase ya hecha.

Algunas de las propiedades de las clases heredadas:
• Permite manipular las semejanzas entre objetos mediante una jerarquía
• Cuando una clase hereda de otra se dice que la subclase hereda de la superclase.
• Cuando la subclase hereda de la superclase, la primera hereda todos los métodos y variables de la superclase.

En java se indica herencia entre clases mediante la palabra reservada extends

Supongas que tenemos una clase llamana Persona y que tiene como atributos: nombre y edad

public class Persona{
	private int edad;
	private String edad;

	public Persona(int edad, String nombre){
		this.edad  = edad;
		this.nombre = nombre;
	}

	public String datosGenerales(){
		return "la edad es: " + edad + " y el nombre es: " + nombre;
	}
}

Si necesitamos hacer mas clases que sean tan parecidas a la clase Persona entonces es donde debemos usar la herencia, la cual se hace de la siguiemnte forma.

public class Estudiante extends Persona{
	private int carnet;

public Persona(ind edad, String nombre, int carnet){
super(edad, nombre);
this.carnet= carnet;
}

public String datosEspecificos(){
return “la edad es: ” + edad + “, el nombre es: ” + nombre + ” y el carnet es: ” + carnet;
}
}

El uso de public class Estudiante extends Persona hace que la clase Estudiante tenga los mismo atributos en que la su clase superior Persona.

Noten que el constructor de Persona recibe la edad y el nombre, por lo tanto, si queremos accesar al constructor de la clase superior debes llamarlo con la palabra super seguidamente pasando los parametros respectivos

Leave a Reply