Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
JAVA BÁSICO Página 1 Planes Gabriel Herencia La Herencia en java consiste en la creación de clases a partir de otras ya existentes. Tenemos lo que llamamos Clase Padre (superclase) y Clases Hijas (subclases), que heredan los atributos y métodos de la clase padre. La idea es que en una clase padre defino todos los atributos y métodos comunes. Luego en las clases hijas agrego aquellos atributos y métodos que no son comunes a sus clases hermanas. En la clase padre: o Los atributos se definen como protected. o Los métodos se definen como public. En las clases hijas: o Después del nombre de la clase, usamos: extends NombreClasePadre. o Define sus propios atributos como private. o Los constructores de la clase hija siempre llaman al constructor por defecto de la clase padre. Y también, podemos indicar a que constructor de la clase padre queremos llamar a través del super (parámetros) y podemos agregar nuestros propios atributos dentro del constructor. o Accedemos directamente a los métodos de la clase padre porque están definidos como public. Solo debemos utilizar el super.nombreMetodoPadre(parámetros) y a la vez, podemos agregar mas lógica dentro del método de la clase hija. o Los métodos set/get de aquellos atributos que heredamos no son necesarios de sobrescribir. Veamos un ejemplo: en donde tenemos una super clase llamada Empleado con sus atributos y métodos. Luego creamos dos subclases Comercial y Repartidor. JAVA BÁSICO Página 2 Planes Gabriel –Clase padre Empleado JAVA BÁSICO Página 3 Planes Gabriel JAVA BÁSICO Página 4 Planes Gabriel JAVA BÁSICO Página 5 Planes Gabriel –Clase hija Comercial JAVA BÁSICO Página 6 Planes Gabriel –Clase hija Repartidor Vayamos por partes, en la clase padre, vemos que los atributos en lugar de private usamos protected, haciendo que los atributos se hereden a las clases hijas. En las clases hijas, vemos que después del nombre de la clase escribimos extends nombre_clase_padre, también tienen sus propios atributos. Debemos tener en cuenta varios aspectos, los constructores de la clase hija siempre llaman al constructor por defecto (el que no tiene parámetros) de la clase padre, también podemos indicar que constructor debe de llamar, se indica con super(parametros);, después podemos hacer lo queramos. Si no indicamos nada es como si escribiéramos super();. También debemos tener en cuenta que los métodos no es necesario que los heredemos, ya que con public las clases hijas podrán acceder a los métodos de la clase padre. También podemos llamar métodos de la clase padre con super.nombre_método(parámetros) desde dentro de métodos propios de las clases hijas. Nos ahorrara trabajo, es mejor que copiar y pegar código. JAVA BÁSICO Página 7 Planes Gabriel Ahora vamos a ver un ejemplo de crear objetos de estas clases heredadas: Por último, recuerda que la herencia va de arriba a abajo, es decir, que una clase padre no podrá acceder la clase hija pero si al revés. Además, solo podemos heredar una sola clase.
Compartir