Mapa mental
Programación Orientada a Objetos

Contenido del mapa
Programación Orientada a Objetos
Caracteristicas de POO
- Abstracción
- Simplificar un objeto de la vida real a solo un par de atributos
- Encapsulamiento
- Ocultamiento de la información. Esconde la implementación del objeto
- Tipificación
- Caracterización precisa. Objetos de diferentes tipos no se puedan intercambiar
- Polimorfismo
- Polimorfismo es la capacidad de un objeto de adquirir varias formas.
- El polimorfismo en POO consiste en conseguir que un objeto de una clase se comporte como un objeto de cualquiera de sus subclases
- Polimorfismo es la capacidad de un objeto de adquirir varias formas.
- Jerarquía de clases
- Es una clasificación u ordenación. Elementos más específicos incorporan la estructura y comportamiento de elementos más generales; en este caso clases
- Abstracción
Clases y objetos
- Constructor
- Tiene por propósito inicializar los valores de los campos de un objeto al momento de su creación.
- No tiene un tipo de devolución explícito
- Tiene por propósito inicializar los valores de los campos de un objeto al momento de su creación.
- Objeto
- Ente abstracto que consta de un estado y de un comportamiento
- Método
- Acciones que puede realizar el objeto
- Sobrecarga de métodos
- Posibilidad de tener dos o más métodos con el mismo nombre pero distinta funcionalidad
- Sobrecarga de operadores
- Reutilizacion de un operador para usos diferentes
- Atributos, miembros, y bloques estáticos
- Atributos: Se utilizan cuando un problema presenta una mejor solución sin necesidad de usar objetos. No requieren de una instancia para ser utilizados
- Miembros: Son variables que pueden ser usadas sin tener que usar una instancia de la clase que las contienen
- Bloques: Son usados para inicializar variables estáticas. Son llamados en el orden en que aparecen en el código fuente
- Atributos y miembros de instancia
- Atributos: Características del objeto
- Miembros: Son variables que pertenecen solamente a esa instancia de la clase
- Clase abstracta
- Métodos abstractos
- Es un método declarado pero no implementado
- Solo se escribe su nombre, parámetros y tipo devuelto pero no su código
- Es un método declarado pero no implementado
- Debe poseer por lo menos un método abstracto
- Métodos abstractos
- Clase: Es la descripción de un conjunto de objetos similares
- Constructor
Interfaces
- En jerarquía de clases
- Una interfaz permite relacionar dos o más jerarquías de clases distintas
- Contratos
- Una interface no puede hacer nada por sí sola, es prácticamente un contrato
- Las clases que la implementen deben, obligatoriamente, definir el comportamiento de todos los métodos abstractos
- Una interface no puede hacer nada por sí sola, es prácticamente un contrato
- Tipo de dato
- Las interfaces definen tipos abstractos de datos
- Por defecto, todas las constantes definidas en un interface son public static final
- Las interfaces definen tipos abstractos de datos
- Herencia
- Una interfaz puede heredar de cualquier número de interfaces.
- Ejemplo en API de Java
- interface Canino{ void comer(); } interface Mascota{ void respirar(); } interface Perro extends Canino, Mascota{ void ladrar(); }
- Es un tipo de referencia, similar a una clase, que puede contener solamente constantes y métodos abstractos.
- En jerarquía de clases
Tipos de acceso
- public
- La propiedad o método es accesible desde cualquier método de otra clase
- private
- Únicamente la clase puede acceder a la propiedad o método
- protected
- Las clases del mismo paquete y que heredan de la clase pueden acceder a la propiedad o método
- default
- Solo las clases en el mismo paquete pueden acceder a la propiedad o método
- Los modificadores de acceso permiten al diseñador determinar quien accede a los datos y métodos miembros de una clase.
- public
Agregación
- Acceso a miembros de clases agregadas
- Para tener un acceso miembros de clases agregadas tendremos q usar los famosos getters y setters (métodos de acceso)
- Clases enum
- Son clases "especiales" que limitan la creación de objetos a los especificados explícitamente en la implementación de la clase
- La agregación es un tipo de asociación que indica que una clase es parte de otra clase.
- Clases internas
- Una clase interna es una clase definida dentro de otra clase
- Acceso a miembros de clases internas o anidadas
- Si la clase interna es privada, entonces no se tendrá acceso a ella fuera de la clase exterior
- Tanto los métodos de la clase externa como los de la clase interna, tienen acceso a los miembros privados e instancias de ambas clases.
- Acceso a miembros de clases internas o anidadas
- Una clase interna es una clase definida dentro de otra clase
- Acceso a miembros de clases agregadas
Herencia
- Simple
- Las subclases heredan las características de solo una superclase
- Múltiple
- Una clase puede tener más de una superclase y heredar características de todas las clases principales
- Simulación de herencia múltiple en Java
- Java no admite herencia múltiple con clases, así que para lograrlo tenemos que usar Interfaces
- Es el mecanismo de implementación mediante el cual elementos más específicos incorporan la estructura y comportamiento de elementos más generales
- Simple
Forzamientos
- upcasting
- Interpretar un objeto de una clase derivada como del mismo tipo que la clase base
- downcasting
- Interpretar un objeto de una clase base como del mismo tipo que una clase derivada suya
- upcasting
Imágenes y archivos del mapa
Información
- Descripción
- Mapa Mental sobre Programación Orientada a Objetos, creado por Daniel Jezrael Pimentel Paulin el 18/12/2020.
- Creado por
- Daniel Jezrael Pimentel Paulin
- Visitas
- 1
- Valoración


















