Intern
¿Qué es la herencia en programación y para qué se utiliza?
sobes.tech AI
Respuesta de la IA
La herencia es un mecanismo de la POO que permite a una clase (clase hija, derivada) heredar propiedades (atributos) y comportamientos (métodos) de otra clase (clase padre, base).
Se utiliza para:
- Reutilización de código: Los métodos y atributos de la clase base están disponibles en la clase derivada, lo que evita la duplicación de código.
- Creación de jerarquías de clases: Permite modelar relaciones "es un" (is-a) entre objetos. Por ejemplo,
PerroesAnimal. - Extensión de funcionalidad: La clase hija puede agregar sus propios atributos y métodos o redefinir (modificar) el comportamiento heredado.
- Polimorfismo: Junto con la despacho dinámico, la herencia permite tratar objetos de diferentes tipos, refiriéndose a su clase base.
Ejemplo en Python:
class Animal:
# Clase base
def __init__(self, name):
self.name = name
def make_sound(self):
pass # Método vacío, será redefinido en clases hijas
class Dog(Animal):
# Clase hija
def __init__(self, name, breed):
super().__init__(name) # Llamada al constructor de la clase base
self.breed = breed
def make_sound(self):
# Redefinición del método make_sound
print("Woof!")
# Uso
my_dog = Dog("Бобик", "Овчарка")
print(my_dog.name) # Atributo heredado
my_dog.make_sound() # Método redefinido