Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
¿Qué es la Abstracción? | Polimorfismo y Abstracción
Programación Orientada a Objetos en Python a Fondo
course content

Contenido del Curso

Programación Orientada a Objetos en Python a Fondo

Programación Orientada a Objetos en Python a Fondo

1. Conceptos de POO
2. Herencia
3. Encapsulamiento
4. Polimorfismo y Abstracción
5. Métodos Mágicos

book
¿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:

12345678910111213141516
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
copy

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.

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 4
We're sorry to hear that something went wrong. What happened?
some-alt