Fundamentos Esenciales de la Programación Orientada a Objetos
Clasificado en Informática
Escrito el en español con un tamaño de 4,43 KB
Fundamentos de la Programación Orientada a Objetos (POO)
¿Qué es la Programación Orientada a Objetos (POO)?
La Programación Orientada a Objetos (POO) es un paradigma que programa desde una perspectiva de objetos.
Objetivos y Ventajas de la POO
Objetivos Principales:
- Ocultamiento de información
- Abstracción
- Encapsulamiento
Ventajas Clave:
- Fácil mantenimiento
- Trabajo en equipo
- Reutilización de código
Conceptos Fundamentales de POO
Clase y Objeto
¿Qué es una Clase?
Una Clase es una plantilla que conceptualiza los atributos y métodos de un tipo de objeto.
¿Qué es un Objeto?
Un Objeto es una realización o instancia de una clase.
Diferencia entre Clase y Objeto:
Una clase es la definición de un tipo de objeto (con sus métodos y atributos). Un objeto es una realización o instancia concreta de esa clase.
Atributos y Métodos
¿Qué son los Atributos?
Los Atributos son las características o propiedades del objeto. Suelen ser privados.
¿Qué son los Métodos?
Los Métodos son las acciones o funciones que puede realizar el objeto. Suelen ser públicos.
¿Qué es el estado de un objeto?
El estado de un objeto abarca todas las propiedades del objeto, es decir, sus valores actuales.
¿Por qué los objetos instanciados de una clase son diferentes?
Porque cada uno tiene sus atributos con valores distintos.
Pilares de la POO
Encapsulamiento
¿Qué es el Encapsulamiento?
El Encapsulamiento es la característica mediante la cual se agrupan los datos (atributos) y los métodos que operan sobre esos datos dentro de una única unidad (el objeto), controlando el acceso a su información interna.
¿Qué protege el Encapsulamiento?
Permite elegir qué información es pública y cuál es privada, protegiendo la integridad de los datos del objeto.
Composición
¿Qué es la Composición?
La Composición ocurre cuando una clase tiene un atributo que es de tipo de otra clase, indicando una relación "tiene un".
Herencia
¿Qué es la Herencia?
La Herencia consiste en tomar la forma de una clase existente (clase base o superclase) y añadir código (atributos y métodos) sin modificar la clase original, permitiendo la reutilización y extensión.
Creación e Interacción con Objetos
Instanciación de Objetos
¿Cómo se instancia un objeto?
Un objeto se instancia cuando utilizamos el operador new
.
¿Cómo se interpreta una instancia de una clase?
Un objeto de una determinada clase se denomina una instancia de la clase.
Constructores
¿Qué es un Constructor?
Un Constructor es un elemento especial de una clase que se utiliza para inicializar objetos con valores ya preestablecidos o definidos al momento de su creación.
¿Es posible implementar más de un constructor dentro de una clase?
Sí, es posible, siempre y cuando tengan un número o tipo de parámetros distintos (esto se conoce como sobrecarga de constructores).
Visibilidad de Miembros
¿Cuáles son los tipos de visibilidad?
Los tipos de visibilidad son: Public, Private, Protected.
¿Cuántas copias de un miembro de la clase existen?
Existen tantas copias como objetos instanciados de la clase se necesiten, a menos que sean miembros estáticos (de clase).
Características Avanzadas
Sobrecarga de Métodos
¿En qué consiste la sobrecarga de un método?
La Sobrecarga de un método consiste en crear más de un procedimiento, constructor de instancia o propiedad en una clase con el mismo nombre, pero con distintos tipos o número de argumentos (firma diferente).
¿Se puede considerar que dos métodos de una clase, con el mismo nombre, número de parámetros y tipo de estos, están sobrecargados?
No, porque la sobrecarga de métodos es la creación de varios métodos con el mismo nombre pero con distinta definición y firma (es decir, diferentes parámetros en cantidad o tipo).