Contenido del Curso
Programación Orientada a Objetos en Python a Fondo
Programación Orientada a Objetos en Python a Fondo
¿Qué es la Abstracción?
La abstracción es uno de los conceptos fundamentales de la programación orientada a objetos en Python. Desde una perspectiva humana, todas las clases en código son abstractas (no podemos tocarlas). Sin embargo, las máquinas pueden operar con ellas. Sin embargo, es posible crear una abstracción incluso para las máquinas, haciendo que la clase sea abstracta también para ellas.
En Python, una clase abstracta es una clase que no puede ser instanciada directamente y que sirve como modelo para otras clases. Proporciona una interfaz común o un conjunto de métodos que se espera que implementen las clases derivadas.
Veamos un ejemplo:
from abc import ABC, abstractmethod class SomeClass(ABC): @abstractmethod def something(): print("Something") class NewClass(SomeClass): attribute = "Something" def something(self): print(self.attribute, "is the NewClass attribute") new_class = NewClass() # created new_class.something() instance = SomeClass() # raised an error
En el ejemplo se muestra la creación de una clase abstracta llamada AlgunaClase
, que sirve de modelo para la clase derivada NuevaClase
. Una clase abstracta actúa exclusivamente como modelo para sus clases derivadas y no puede ser instanciada directamente.
En capítulos posteriores exploraremos la clase ABC
, los decoradores @abstractmethod
y profundizaremos en la estructura y los detalles de las clases abstractas.
¡Gracias por tus comentarios!