Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

¿Qué es la herencia?

15/37
Recursos

Don’t repeat yourself es una filosofía que promueve la reducción de duplicación en programación, esto nos va a inculcar que no tengamos líneas de código duplicadas.

Toda pieza de información nunca debería ser duplicada debido a que incrementa la dificultad en los cambios y evolución

La herencia nos permite crear nuevas clases a partir de otras, se basa en modelos y conceptos de la vida real. También tenemos una jerarquía de padre e hijo.

Aportes 223

Preguntas 24

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Cuando detecto características y comportamientos iguales, entonces significa que debo realizar una abstracción.

Superclase la que está dando Anahí!. Excelente curso

Así entiendo que es una clase. Cualquier corrección favor de informar.

He escuchado que hay programadores que no aconsejan en el trabajo usar los términos Padre e hijos ya que al llamarlos así se puede dar una mala impresión en cuanto al nivel profesional y de conocimiento. En un escenario laboral es mejor llamar estas relaciones con los nombres Súperclase y Subclase y solo usar Padre e hijos para enseñar y entender la idea de herencia (como el caso de este curso) y entre compañeros de confianza.

-“Bastantes hijos”

Así entiendo yo el término herencia. Cual quier corrección adelante.

Asi enteido yo lo que es la abstracción de una clase.

El concepto de herencia es un muy importante dentro de la programacón, por ejemplo en frameworks se hace mucho uso de ella y tener este concepto claro ayuda mucho a comprender como funcionan los frameworks internamente, por ejemplo en laravel de php cuando creamos modelos estos heredan de una clase principal llama Model…

Java admite padrastros por medio de las interfaces :v

Muy parecido al concepto de entidad relación en una base e datos relacional

😄

Platzi porque se fue AnnCode? La extraño

📌 Debemos utilizar la herencia, cuando detectamos elementos repetidos en nuestros objetos. Esto nos permite eliminar la redundancia.

Así entendí yo la abstracción. Si alguien gusta en correguirme adelante.

Me quedo con esa frase “Don’t repeat yourself”, hasta ahora hacia codigos duplicando todo pero es muy importante reultilizar el codigo y excelente expliación de la herencia.


Les comparto una infografía de herencia con Python

La clase SeleccionFutbol también la podemos poner como Persona para mayor claridad.

¿Qué es la herencia?
.
DRY: Don’t Repeat Yourself, consiste en promover la reducción de duplicación en programación. Ninguna pieza debe de ser duplicada debido a que aumenta la dificulta en los cambios y evolución.
.
Herencia, nos permite crear nuevas clases a partir de otras, teniendo una simulación de la vida real.
.
Clase Padre, la encontraras también con el nombre de Supérclase, y la palabra de referencia que se ocupa dentro del código es: super.
Clase Hijo, la encontraras también con el nombre de Subclase.
.
Recuerda: Cuando detectas características y comportamientos iguales, entonces significa que debes realizar una abstracción, herencia.

Me encantan sus curso, naciste con esa esencia de que todo lo que explicas sea fácil

Realize un diagrama de clases para practicar, espero tenerlo bien jejjej
![](

Como en la vida cotidiana el padre siempre hereda algo a su hijo .

solo pienso en pokemon cuando dicen atributos jaja

Conceptos vistos en el video

  • Herencia: Mecanismo utilizado en la programación que nos permite crear nuevas clases a partir de una existente.
  • Abstracción: Práctica de aislar un elemento de su contexto, o el resto de elementos que lo acompañan consiguiendo de ese modo, reducir ese elemento a sus características mas esenciales

-La herencia es el mecanismo mediante el cual podemos definir una clase (Subclase) en función de otra ya existente (Superclase).
-Las subclases heredan los atributos y operaciones de sus superclase.
-Existen dos tipos de herencia (Simple y Multiple):
*Herencia múltiple en la que una clase puede **heredar ** comportamientos y características de más de una superclase.
*Herencia simple, donde una clase sólo puede heredar de una superclase.

HERENCIA EN POO

La herencia, es el procedimiento utilizado para reutilizar codigo cuando creamos nuevas clases. Pues lo único que se hace, es indicar al programa que queremos utilizar las variables y funciones de una clase que ya hemos creado anteriormente. Es decir, podemos utilizar los metodos y atributos de una clase que ya existe, colocarlos dentro de una nueva clase sin necesidad de volver a escribir el codigo.

La herencia o reutilización de codigo, es una gran ventaja porque ayuda al programador a ahorrar codigo y tiempo, al no tener que volver a escribir las mismas líneas de codigo nuevamente.

Recuerdos de Pakiman con Freddy en el curso de programación básica :3

Pregunta usando este mismo ejemplo que da Anahí:

Es posible crear el método “Trabajar” en la clase padre y que la hereden las clases hijas en lugar de tener jugarPartido(), dirigirPartido() y darMasaje()?

Ciertamente es difícil deshacerse de los hábitos que deja la programación estructurada, pero la profesora hace que sea fácil y entendible con conceptos claros. Excelente.

Siii patrones de diseño!!!

Herencia:
Es esa gran forma de reutilizar el código.
Por ejemplo si tenemos una clase persona con atributos como nombre, teléfono, email, y métodos como cambiarEmail,cambarTelefono, y necesitamos crear un clase llamada cliente, esta clase puede heredar de la clase persona todos sus métodos y atributos y también puede tener sus propios atributos como podría ser numeroCliente.

Herencia: es la forma de compartir propiedades y comportamientos en común entre clases, para evitar especificarlas en cada clase y así hacer el código mas fácil de mantener

La reutilización y la herencia son claves para simplificar el código y sea más legible, consistente y evitar en lo posible la repetición de código.

Una SuperClase es aquella que tiene propiedades y comportamientos que estarán en otras Subclases, las hijas. >Asi eliminamos toda redundancia de datos.

muy buena explicación

herencia
• La generalización es la relación entre una clase (superclase) y una o más versiones especializadas (subclases) de la misma.
– Los atributos y operaciones comunes a un grupo de subclases se asocian a la superclase y son compartidos por las subclases.
– Se dice que cada subclase hereda las características de su superclase, aunque también añade su propios atributos y operaciones específicos.
– La notación UML para la generalización es una flecha que conecta la superclase con sus subclases, apuntando a la superclase.
– Junto a la punta de flecha en el diagrama pueden colocarse un discriminador, un atributo de tipo enumeración que indica la propiedad de un objeto que se abstrae en una relación de generalización particular

Un principio o guía al momento de analizar donde aplicar la herencia es el principio “es un” por ejemplo Ejemplo: Estamos desarrollando un sistema para llevar el control dentro de una escuela, tanto de estudiantes, docentes, algunos atributos comunes entre los docentes y los alumnos son los datos personales aquello que cada persona tiene entre ellos están nombres, apellidos, fecha de nacimiento y así sucesivamente. Aplicando el principio “es un” para encontrar una clase que generalice de a estas dos diríamos que tanto el docente como el Alumno son “personas”, así creamos la clase persona de la cual heredan tanto el docente como el alumno, ya que el docente en ultima instancia es una persona y también el alumno. Cuando una clase hereda de pocas clases mas genérica es por eso en java la clase “Object” es la clase super cósmica de la cual heredan las demas y esta solamente tiene unos pocos métodos…

Yo el DRY lo aprendi como **DRYS **😅

Al crear una superclase, las sublcases solo tendrán propiedades y comportamientos que las distinguen de las demás.

Es el principio de la programacion modular ❤️

Java no permite la herencia multiple, osea que no se puede tener varios padres que den herencia o más bien la subclase solo puede heredar de una superclase.

2 meses con Java lo aprendi XD

la herencia es verficar y reutilizar el codigo, para aevitar el codigo espagueti

Generar una clase mas general entre las clases que repiten atributos (y tal vez metodos) para de ahi plantear mejor el problema

La herencia es un proceso mediante el cual se puede crear una clase hija que hereda de una clase padre, compartiendo sus métodos y atributos. Además de ello, una clase hija puede sobreescribir los métodos o atributos, o incluso definir unos nuevos. (Fuente: ellibrodepythom)

No repetir el código es un beneficio, pero la herencia se basa en el concepto de generalización y especialización que surge del análisis de los objetos que forman parte de una aplicación. En el caso planteado va mas allá de ver propiedades repetidas, esas propiedades corresponden a una generalización que es personas. En una aplicación de un hospital un empleado es una persona con numero de legajo, un medico es una persona con una matricula y una especialidad, un paciente es una persona con una historia clínica pero todos comparen atributos por ser personas. Si se hace un buen diseño no importa si hay un solo tipo de clase, si esta puede dividirse por generalización y especialización va a permitir la escalabilidad y el buen diseño incorporando nuevas clases sin rediseñar por duplicación de atributos. Cualquier característica adicional a una clase base (o padre) posterior a su implementación automáticamente será heredada.

Un ejemplo sencillo de herencia es lo que esta haciendo la profesora Anahí cuando TRANSMITE su conocimiento que ahora PASA a formar parte de nuestro propio conocimiento.

¿Como se maneja la herencia en bases de datos?

Hola

aqui te dejo una lectura para ejemplificar mas sobre la herencia :
https://www.netmentor.es/entrada/herencia-poo

Herencia

La herencia se puede definir como el proceso en el que una clase adquiere las propiedades (métodos y campos) de otra. Con lo cual se permite crear nuevas clases a partir de otras, teniendo una simulación de la vida real.

DRY: Don’t Repeat Yourself: Consiste en promover la reducción de duplicación en programación. Ninguna pieza debe de ser duplicada debido a que aumenta la dificultad en los cambios y evolución.

Al hacer el análisis de clases es posible que se detecten características y comportamientos duplicados, por lo que se deber hacer un análisis de abstracción posterior para crear una clase que sea lo más general entre ellas. Dicha clase es la que permite generar nuevas clases a partir de ella, definiendo el concepto de Herencia.

La herencia establece una jerarquía, una relación padre e hijo:

Clase Padre

También conocida como Superclase, y la palabra de referencia que se ocupa dentro del código es: Super.

Clase Hijo

También conocida como Subclase.

La HERENCIA imita a la herencia de la vida real, las propiedades o atributos pasarán de Padres a Hijos. Tendrán características comunes y comportamientos o métodos comunes. Existe una regla que se debería aplicar siempre la de:
Es un…

  • ¿Un Jefe es un empleado?

  • ¿Un Empleado es un Jefe?

¿Qué es la herencia?


💧DRY: Don´t repeat yourself

Es una filosofía que promueve la reducción de duplicación en la programación.

Toda pieza de información nunca debería ser duplicada debido a que la duplicación incrementa la dificultad en los cambios y evolución.

La herencia nos permitirá crear nuevas clases a partir de otras. O sea, vamos reutilizar código. Quiere decir, que vamos a hacer una abstracción para generar una súper clases general que después utilicemos para crear otras clases.

  • En la herencia también tendremos una jerarquía de padre e hijo.
  • En OOP, la clase padre siempre la encontraremos como la ‘Súperclase’ y los hijos como ‘subclase’.

La herencia nos permitirá reutilizar el código

La herencia es un tema clave para POO

¿En qué casos usamos herencia para las clases abstractas, en qué casos para las interfaces, y en qué casos solo se hereda normal?

Ejemplo creación superclase

Me trae recuerdos a las bases de datos

Ejemplo de Herencia, Superclase y subclases.

Don’t repeat yourself

1ra Ley del código/programción

DRY DON´T REPEAT YOURSELF

-Promueve la reducción de duplicación en programación.

  • Toda pieza de información nunca debería ser duplicada, esto incrementa la dificultad en cambios y evolución.

Herencia
-Crea nuevas clases a partir de los elementos de otras.
-Establece una relación de padre e hijos (Superclase,subclase)

Aplicación en la vida real
Después de hacer nuestro primer análisis y plasmar gráficamente mediante un diagrama las clases, empezamos a buscar elementos en común en las clases, todo esto permite generar una abstracción a partir del resultado anterior para dar vida a una superclase.

yo estoy adelantando mi clase de universidad ya me imagino explicando mis profesores esto

Cuando se analiza los objetos, se definen atributos y comportamientos y nos damos cuenta que hay atributos y comportamientos que se repiten en cada objeto. Para solucionar eso y no repetir elementos, se genera una clase padre que contiene los atributos y comportamientos que se repiten, y también se crea clases hijos que heredan los atributos y comportamientos de la clase padre, a esto se llama Herencia.

Buena y clara explicación.

ahora si logre entender el tema de la Herencia !
Excelente Explicación !

Gran manera de explicar el concepto de Herencia.

dos puntos por terminar de ver el video :v

Muy buena explicación, voy comprendiendo de lo mejor!

OOP está muy a la mana con Database
📟
En relación a nuestro Sistema de Uber la herencia se aplicaría de esta forma.
Auto ->SúperClase
-UberX ->subclase
-UberPool ->subclase
-UberBlack ->subclase
-UberVan ->subclase

Pago ->SúperClase
-Card ->Subclase
-Paypal ->Subclase
-Cash ->Subclase

Mis aplausos profe se le entiende muy bien!

La herencia nos permite seguir con el principio de modularidad.

Don’t repeat yourself ❤️

La Herencia, nos permite crear nuevas clases a partir de otras. La herencia es clave para reutilizar lineas de código.
.
La Superclase hace referencia a que es la clase padre y La Subclase se define como hijo de la superclase.
.

Rima y todo: promueve la reducción de duplicación en programación.

tan difícil que era entender estos en la universidad! xd

Cuando dice leyes del codigo a que se refiere? y a que filosofia pertenece el concepto Don’t repeat yourself?

Me podrían aclarar el porque la clase Futbolista , Entrenador y Masajista heredan a la clase SeleccionFutbol 😦 ya se que es porque comparten los mismo metodos y atributos, pero mi intriga es por que la clase seleccionFutbol no es la que hereda a las demás

la herencia es uno de los pilares fundamentales de la programación orientada a objetos. Es el mecanismo por el cual una clase permite heredar las características (atributos y métodos) de otra clase.

me gusta mucho por que explica como mi mama y me hace dar ganas de seguir aprendiendo esta carajada de la programacionnnnn 😃 ANN es la mejorrrrrrrrr profe

nunca he entendido para que piden la edad, si cada año cambia? a caso no es mejor pedir fecha de nacimiento y calcular la edad??

En el caso del proyecto Uber Seria:
Superclase (Person) y como subclase(Driver y User)
¿Estoy en lo cierto?

La super clase!

Toda pieza de información nuca debería ser duplicada.

La herencia (a la que habitualmente se denomina subclase) proviene del hecho de que la subclase (la nueva clase creada) contiene las atributos y métodos de la clase primaria. La principal ventaja de la herencia es la capacidad para definir atributos y métodos nuevos para la subclase, que luego se aplican a los atributos y métodos heredados.

DRY es una filosofía que promueve la reducción de duplicación en programación.

Por otra parte la herencia nos permitira crear clases apartir de otras. ( clases generales o super clases -“Padre” y subclases o “hijos”)

es muy parecido cuando se grafica la relacion de las tablas que se hacen en SQL cuando se grafica sus relaciones, sus keys y demas.

  • Esta fue mi versión aplicando la herencia a partir de una clase
    .

Ya que tengo conocimiento con CSS, esto es igual a cuando colocamos una clase general a todos los elementos que van a sufrir cambios en iguales y luego a esas mismos elementos le colocamos otras clases diferentes a la general, debido a que van a tener cambios más específicos si se da el caso.

Herencia

  • Basado en el pincipio don’t repeat yourself que consiste en evitar escribir lo mismo varias veces, es decir la reutilizaci[on del código escrito anteriormente.
  • Consiste en la creación de nuavas clases (subclases o clases hijas) a partir de otras (superclases o clases padre)
  • Usamos la herencia cuando detectamos atributos y métodos en común

El ejemplo de heredar bienes se puede mejorar con: La genética es el estudio de la herencia, el proceso en el cual un padre le transmite ciertos genes a sus hijos. La apariencia de una persona (estatura, color del cabello, de piel y de los ojos) está determinada por los genes. Recomiendo mentalizarse más en Jerarquía y relación: Superior-Inferior (padre-hijo mhmmm…)

En mi opinión, esta clase es una de las más importantes de todo el curso, el principio del todo.

Esta clase ahondó en la definición de herencia y en como esta puede (Y DEBE) utilizarse a la hora de plantearse los diagramas y la posterior materialización en el código.

La herencia, de manera general, es el proceso mediante el cual un padre/madre le pasa a su hijo sus caracteristicas. En el caso de la POO se lleva a cabo cuando varias clases tienen comportamientos y atributos en común. Para facilitar el entendimiento del código, se crea una clase general que resuma estas cualidades y así no se repitan en cada una nueva.

Es útil ya que facilita y resume mucho accionar durante la escritura del código. También, al haber realizado un buen ejercicio inicial (identificar y describir los objetos) los reduce para su manejo.

Me gusta como explica cada temas, la abstracción es mucho mejor asociando un ejemplo.

“Un padre puede tener muchos hijos”

Faltó: Porque Latinoamérica

😂

Tuve un hermoso de ja vù de matematicas con la abstraccion.
Las matematicas entrenan la mente para estas cosas, las matematicas son buenas.

A la hora del análisis, si repetimos los datos, obviamente con sus tipos de datos y longitudes, es cuando se recurre al uso de la herencia; es como si esa plantilla fuera compatible con las clases donde tengan las características similares y si se acopla, de a poco esa clase padre se va dando forma como el dueño de dicha plantilla.

Herencia

Iba a decir que funciona muy parecido a las herencias de CSS pero pensé que no, al final creo que son muy similares ya que como tal el hijo hereda las propiedades y funciones del padre con el objetivo de no repetir código.

Herencia: Crear nuevas clases a partir de otras. Su jerarquía establece una relección padre e hijo.

SuperClase: Clase Padre
SubClase: Clase Hijo o Hijos

EN POO NO PUEDO TENER ELEMENTOS REPETIDOS, POR QUE LUEGO TENDRE PROBLEMAS A FUTUROS, Y POR ESO SE DEBE DE CREAR UNA CLASE PARA QUE TENGA TODOS LOS ELEMETOS EN COMUN

Herencia en POO
Herencia es un concepto de la programación orientada a objetos. El cual es un mecanismo que permite derivar una clase a otra clase.

En otras palabras, tendremos unas clases que serán hijos, y otras clases que serán padres.

Las clases hijas pueden utilizar tanto sus métodos y propiedades como de la clase padre, siempre que su modificador de acceso lo permita.

Genial cada vez se entiende POO y el miedo desaparece.

Comparto mis apuntes realizados en Notion.

https://oscargbocanegra.notion.site/POO-Programaci-n-Orientada-a-Objetos-a226428ac83348f797d920e04b122f4e