Hogar » Herencia (programación orientada a objetos)

Herencia (programación orientada a objetos)

1967
  • Kristen Nygaard
  • Ole-Johan Dahl
Programmer coding inheritance in object-oriented programming at a modern office.

La herencia es un mecanismo en programación orientada a objetos (POO) donde una nueva clase (subclase o clase derivada) se basa en una clase existente (superclase o clase base), heredando sus atributos y métodos. Esto facilita la reutilización del código y establece una jerarquía natural entre clases. La subclase puede extender o anular el comportamiento heredado, lo que permite implementaciones más específicas manteniendo una interfaz común.

Inheritance facilitates an “is-a” relationship between classes. For example, a ‘Dog’ is a type of ‘Animal’. In this scenario, ‘Animal’ would be the superclass, containing general attributes and methods like ‘age’ and ‘eat()’. The ‘Dog’ class would be the subclass, inheriting these properties and adding its own specific ones, like ‘breed’ and ‘bark()’. This avoids code duplication, as the common logic is defined once in the superclass and reused by all its subclasses. Changes made to the superclass are automatically propagated to all subclasses, simplifying maintenance.

There are different types of inheritance, including single inheritance (a class inherits from only one superclass), multiple inheritance (a class inherits from more than one superclass), and multilevel inheritance (a class inherits from another class which itself is a subclass). While powerful, inheritance can also introduce complexity and tight coupling between superclasses and subclasses. Overuse can lead to deep and convoluted hierarchies that are difficult to understand and maintain. Modern design often favors composition over inheritance, where an object contains an instance of another object to achieve code reuse, representing a “has-a” relationship.

UNESCO Nomenclature: 1203
- Informática

Tipo

Sistema abstracto

Disrupción

Substancial

Utilización

Uso generalizado

Precursores

  • El concepto de clasificación jerárquica en biología y filosofía
  • estructuras de datos que podrían contener otras estructuras de datos
  • the need for code reuse in large software sistemas
  • El diseño del lenguaje simula, que introdujo clases y herencia

Aplicaciones

  • gui widget toolkits (e.g., a ‘button’ class inheriting from a ‘control’ class)
  • Marcos para el desarrollo web (por ejemplo, clases de controlador que heredan de un controlador base)
  • game development (e.g., ‘orc’ and ‘elf’ classes inheriting from a ‘character’ class)
  • modelado de clasificaciones biológicas
  • Creación de tipos de excepciones especializados en lenguajes de programación

Patentes:

NA

Posibles ideas innovadoras

Membresía obligatoria de Professionals (100% free)

Debes ser miembro de Professionals (100% free) para acceder a este contenido.

Únete ahora

¿Ya eres miembro? Accede aquí
Related to: inheritance, subclass, superclass, derived class, base class, code reuse, hierarchy, is-a relationship, polymorphism, overriding.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

DISPONIBLE PARA NUEVOS RETOS
Ingeniero Mecánico, Gerente de Proyectos, Ingeniería de Procesos o I+D
Desarrollo eficaz de productos

Disponible para un nuevo desafío a corto plazo.
Contáctame en LinkedIn
Integración de electrónica de metal y plástico, diseño a coste, GMP, ergonomía, dispositivos y consumibles de volumen medio a alto, fabricación eficiente, industrias reguladas, CE y FDA, CAD, Solidworks, cinturón negro Lean Sigma, ISO 13485 médico

Estamos buscando un nuevo patrocinador

 

¿Su empresa o institución se dedica a la técnica, la ciencia o la investigación?
> Envíanos un mensaje <

Recibe todos los artículos nuevos
Gratuito, sin spam, correo electrónico no distribuido ni revendido.

o puedes obtener tu membresía completa -gratis- para acceder a todo el contenido restringido >aquí<

Contexto histórico

(si se desconoce la fecha o no es relevante, por ejemplo "mecánica de fluidos", se ofrece una estimación redondeada de su notable aparición)

Invención, innovación y principios técnicos relacionados

Scroll al inicio

También te puede interesar