seegongsik
Programación

Qué es la herencia en programación

Con los objetos creamos "una cosa" (lección 12). Pero si haces un perro, un gato y un pájaro como objetos, el nombre, la edad y el comer se repiten una y otra vez igual. La herencia consiste en reunir esas partes comunes en un solo lugar y hacer que cada uno las herede.

01

Partes que se repiten

Un perro, un gato y un pájaro se pueden crear como objetos.
Pero si los pones uno al lado del otro, el nombre, la edad y el comer aparecen en los tres exactamente igual.
Es como escribir lo mismo tres veces, y cuantos más tipos añades, más crece esa repetición.

Perro
nombre
edad
comer
Gato
nombre
edad
comer
Pájaro
nombre
edad
comer

Pulsa "ver lo repetido" y las etiquetas comunes del perro, el gato y el pájaro se iluminan a la vez.

Las partes repetidas se ven de un vistazo.
Si vuelves a escribir lo mismo en cada objeto, al arreglar una cosa tienes que arreglarlas todas, una por una.
Entonces, ¿dónde conviene reunir estas partes comunes?

02

Subir las partes comunes

Se suben el nombre, la edad y el comer repetidos a un solo lugar de arriba.
Ahí se pone un padre llamado "animal".
Ahora las partes comunes solo están en animal, y el perro, el gato y el pájaro pasan a ser sus hijos, debajo.

Perro
nombre
edad
comer
Gato
nombre
edad
comer
Pájaro
nombre
edad
comer

Pulsa "subir lo común" y las etiquetas repetidas suben y forman un solo padre, "animal".

Al reunir lo común en un solo lugar, los hijos quedan mucho más ligeros.
Pero ¿los hijos ya no tienen nombre, edad ni comer?
No han desaparecido: los reciben del padre.

03

Heredar lo que tiene el padre

Un hijo tiene automáticamente todo lo que tiene el padre.
El perro hereda el nombre, la edad y el comer de "animal" sin volver a escribirlos.
Así que el perro ya es un animal hecho y derecho. Lo recibió; no lo copió.

Animal
nombre · edad · comer
Elige un hijo

Elige un hijo y las etiquetas del padre bajan y lo completan tal cual.

El perro, el gato y el pájaro heredaron lo mismo de su padre, animal.
Pero si los tres fueran idénticos, no serían tipos distintos.
El perro ladra y el pájaro vuela, así que ¿cómo se añade algo así?

04

Añadir lo propio sobre lo heredado

Lo común heredado se deja tal cual, y encima se pone lo propio.
El perro añade "ladrar" y el pájaro añade "volar".
Tienen el mismo padre, pero lo que añaden es distinto, así que el perro y el pájaro se vuelven tipos diferentes.

Animal : nombre · edad · comer
Perro
nombre
edad
comer

Pulsa "añadir lo propio" y el hijo recibe una etiqueta suya, de otro color que las heredadas.

Ahora el perro es "lo común de animal + ladrar".
Lo recibido y lo añadido forman un solo cuerpo.
Lo común en el padre, las diferencias en el hijo. Gracias a esta estructura, llega una última gran ventaja.

05

Lo arreglas una vez y cambian todos

Aquí está el verdadero poder de la herencia.
Si añades "dormir" al padre, animal, el perro, el gato y el pájaro pueden dormir de golpe.
Todos cambian sin que tengas que arreglar cada hijo, y como desaparece la repetición, también bajan los errores.

Animal
nombre
edad
comer
Perro
nombre
edad
comer
Gato
nombre
edad
comer
Pájaro
nombre
edad
comer

Añade "dormir" al padre y todos los hijos reciben esa etiqueta a la vez.

Partiendo de los valores, creamos "cosas" con los objetos y las ordenamos con la herencia.
Ya tenemos en la mano un programa bastante grande.
Pero los programas siempre fallan en algún punto, así que en la próxima lección aprenderemos a encontrar y arreglar lo que falla.

En una líneaLa herencia consiste en poner una sola vez en un "padre" las partes que comparten varios objetos, y que los "hijos" las hereden tal cual y añadan lo suyo. Si arreglas el padre una vez, todos los hijos cambian con él, desaparece la repetición y todo queda coherente.
← Programación
¿Te fue útil? Apoyar seegongsik