Conceptos Objeto Clase Atributo / Método Encapsulamiento Mensaje

Slides:



Advertisements
Presentaciones similares
Unidad 3 Lenguajes .Net y POO
Advertisements

Curso de java básico (scjp)
POLIMORFISMO UNIDAD 4.
Lenguaje de programación Java
Tomado de:
UML 1.4 Peter Emerson Pinchao Solis.
Arquitectura CLARO-TECNOTREE
Orientación a Objetos con Java SE
Introducción a la Orientación a Objetos
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
La Programación Orientado a Objetos
EEST N°2 Mar del Plata 7mo año Informática Personal y Profesional Docente: Barnés Castilla, Viviana Elisa / Modelos y Sistemas.
Tipo de Dato Abstracto Tipos de datos:
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
Diseño y programación de
ORIENTADO A OBJETOS ESTUDIANTE JESSICA LORENA LEAL MEDINA INGENIERIA DE SOFTWARE PROGRAMA INGENIERIA DE SISTEMAS UNIVERSIDA COOPERATIVA DE COLOMBIA NEIVA-HUILA.
Encapsulamiento y Abstracción
Abstracción de Datos La abstracción es un recurso fundamental en la programación orientada a objetos y está además fuertemente ligado a reusabilidad.
UNIDAD I. INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS EN JAVA.
PROGRAMACIÓN EN JAVA Curso-taller inicial de programación en JAVA Facultad de Estadística e Informática TEMA II.
Lenguaje de Programación Java Profesor: Mauricio Martínez P. Análisis y Diseño Orientado a Objetos UML: Lenguaje de Modelamiento Unificado Toma de Requerimientos.
Modificadores.
Introducción a Java II.
Lic. Rosemary Torrico Bascopé
UNIVERSIDAD TECNOLÓGICA DE HERMOSILLO T.S.U. EN T.I.C., Área: Sistemas Informáticos Ing. José Padilla Duarte y estudiantes de Sistemas Informáticos Hermosillo,
Material Original de Microsoft para desarrolladores adaptado por Jorge Miguel PERALTA para clases de Informática Aplicada (Haga clic para adelantar/atrasar.
Introducción a la programación Orientada a objetos
1 Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos.
Jerarquía de Clases: Herencia, Composición y Polimorfismo
Material de apoyo Unidad 2 Fundamentos de programación
Diagramas de Clase Angela Carrillo R..
Introducción a la POO • ¿Qué es la programación orientada a objets (POO)? – Un “paradigma” de programación – Una forma de pensar acerca de los problemas.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
Programación Orientada Objetos
Herramientas de polimorfismo y herencia en C++
Metodología de Programación Ayudantía 4 lelagos.ublog.cl 2008.
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Introducción a UML DIAGRAMA DE CLASES Departamento de Informática
Unidad 2.1: INTRODUCCIÓN A LA ORIENTACIÓN A OBJETOS.
Detalles Generales sobre Java
Programación orientada a objetos
Clasificación de Diagramas
Introducción a la Programación Orientada a Objetos (POO)
Metodología de Programación Clase 1 Leonel Lagos V
Paradigma Orientada a Objetos
Ing. Esp. Ricardo Cujar. Programación Orientada a Objetos  Modelo de desarrollo de software.  Modo de pensar del hombre y no de la máquina.  Abstracción.
UML Casos de Uso (repaso) y Diagramas de Clase
M.C. Pedro Bello López 1 IMPLEMENTACIÓN. M.C. Pedro Bello López2.
Abstracción El concepto de abstracción es esencial en ciencias de la computación. Un programa es en sí mismo una abstracción, un modelo de la resolución.
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
UNIVERSIDAD TECNOLÓGICA DE IZÚCAR DE MATAMOROS TECNOLOGÍAS DE LA INFORMACION Y COMUNICACIÓN BASE DE DATOS PARA APLICACIONES MTRO. GONZALO ROSAS CABRERA.
Acceso a Datos Erick López Ovando Licenciado en Informática.
ORIENTACIÓN A OBJETOS El paradigma.
Programación Orientada Objetos
La Programación Orientado a Objetos
Paradigma Orientado a Objetos
PRESENTACION DE INGENIERIA ORIENTADA A OBJETOS
Herencias Conceptos básicos i
Prof. Manuel B. Sánchez. Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno.
Programación Orientada a Objetos Unidad 5. Los objetos son entidades que combinan estado Contiene toda la información denominados atributos REPASO Cada.
2015-BM5A. Introducción Durante años, los programadores se han dedicado a construir aplicaciones muy parecidas que resolvían una y otra vez los mismos.
Modelado UML Diagrama de Clases
Diagrama de clases Silvia Herzovich Rodrigo Aronas Matias Silversteyn.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Prof. Manuel B. Sánchez. Es un mecanismo y uno de los pilares de la POO que permite definir nuevas clases a partir de otras preexistentes. La Herencia.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar los.
Transcripción de la presentación:

Conceptos Objeto Clase Atributo / Método Encapsulamiento Mensaje Herencia Polimorfismo Encadenamiento Dinámico

Objeto Representa una instancia de un elemento del mundo del problema Es cualquier elemento que se pueda describir en términos de su estado y su comportamiento

Características de los Objetos Pueden ser: Cosas Sencillos y Complejos Reales o imaginarios(conceptuales) Ej. Cuenta bancaria, transacción, Juan, Leon,etc.

Implementación oculta Representa elementos internos de un objeto que pueden ser dañadas por un cliente poco cuidadoso.=> ocultar la implementación disminuye errores. El diseñador de bibliotecas puede cambiar el funcionamiento interno de la clase sin preocuparse sobre cómo afectará al programador cliente

Clases Agrupa un conjunto de objetos del mundo del problema que tienen las mismas características y el mismo comportamiento Son plantillas para crear objetos. Un objeto es una instancia de una clase Ej. Receta para hacer galletas de chocolate. Con ella creas una o muchas galletas de chocolate

Atributo / Método

Atributos Describen el estado de un objeto Objetos simples Tipos de datos primitivos Ej. int, float, double, char, etc Objetos Complejos Referencias a otros objetos Ej. Estructuras de datos u otros objetos

Visibilidad de los Atributos - Encapsulamiento Pública : Los otros objetos pueden referenciar directamente el atributo

Visibilidad de los Atributos - Encapsulamiento (cont.) Privada : solo el objeto puede referenciar directamente sus atributos

Visibilidad de los Atributos - Encapsulamiento Todos los atributos deben tener visibilidad privada EL RESTO DE OBJETOS NO CONOCEN LOS DETALLES DE LA IMPLEMENTACION

Métodos Son servicios que describen el comportamiento asociado a un objeto Pueden conducir al cambio del estado de un objeto Se activa por medio de un mensaje al objeto Métodos se pueden llamar entre ellos Es posible darles visibilidad (Pública, Privada)

Tipos de Métodos Constructores Buses( rojo, AAA, 20 ) Buses( amarillo, XXX, 20)

Tipos de Métodos (cont.) Analizadores: Permiten obtener el estado

Tipos de Métodos (cont.) Modificadores: Permiten cambiar el estado

Tipos de Métodos (cont.) Destructores : permiten eliminar un objeto

Mensaje Mecanismo de comunicación ente objetos para solicitar servicios

Herencia Construir un objeto a partir de otro - Usar atributos y métodos de antecesor Ventaja >> Reutilización Persona Estudiante Pregrado Magister Especialización Instructor Asistente Generalización

Herencia (cont.) Permite definir una clase en función de otra Superclase Subclase Redefinir Métodos Agregar atributos

Herencia (cont.) Agregar Atributos Persona Estudiante Pregrado Magister Especialización Instructor Asistente Promedio: float

Herencia (cont.) Agregar métodos Persona Estudiante Pregrado Magister Especialización Instructor Asistente estaAprobando():Boolean Promedio: float

Herencia (cont.) Redefinición de métodos Persona estaAprobando() Estudiante Magister Promedio: float estaAprobando() {If Promedio>=3.0 return TRUE; else return FALSE} {If Promedio>=3.75

Visibilidad y Herencia Hereda? Puede Acceder? Public Si Private No

Visibilidad Protegida Persona Estudiante Magister Promedio: float Las instancias de magíster pueden referenciar directamente el atributo promedio de la instancia padre estudiante

Polimorfismo Habilidad para adoptar formas distintas Persona Estudiante Magister Objeto Magister Objeto Persona Objeto Estudiante: Métodos de persona y estudiante Métodos de persona, estudiante y magister

Contenedor Polimorfico Colección de Personas (Arreglo) Estudiante (Juan Pérez) Pregrado (Margarita Rojas) Magister (María Rodríguez) Especialización (Carlos Ruiz)

Encadenamiento Dinámico

Encadenamiento Dinámico

Sobrecarga de métodos Métodos dentro de una misma clase que tienen el mismo nombre pero distinta firma No rebuscar nombres de métodos para operaciones similares

Sobrecarga de métodos Buses() valores por defecto: Color=rojo, Placa=AAA, Cap=20 Buses( amarillo, XXX, 20)

Interface Expone un conjunto de métodos sin definir Quien la implementa es responsable de la programación de los métodos expuestos y por tanto expone todos los métodos de dicha clase

Clase Abstracta Es una plantilla para otras clases No es posible crear instancia >> Es abstracta Expone métodos implementados que pueden ser redefinidos con base en la herencia Expone métodos abstractos Deben ser redefinidos en Subclases Modelan funcionalidad