¿Cuáles son los pilares de la programación orientada a objetos?
Los pilares de la programación orientada a objetos son:

1. Abstracción: capacidad de representar los aspectos más relevantes de un objeto, ignorando detalles irrelevantes.

2. Encapsulamiento: ocultar detalles de implementación de un objeto para que los demás objetos no dependan de ellos.

3. Herencia: capacidad de crear nuevos objetos a partir de objetos existentes, reutilizando su comportamiento y estado.

4. Polimorfismo: capacidad de un objeto para adoptar diferentes formas basadas en el contexto.

Estos pilares juntos permiten una programación más clara y mantenible, y facilitan la resolución de problemas complejos al permitir modelar soluciones en términos de objetos y relaciones entre ellos.