Descargar la presentación
La descarga está en progreso. Por favor, espere
1
Clases y objetos
2
Programación Avanzada
Objetos Modela entidades del mundo real. Captura abstracciones de fenómenos complejos. Representar artefactos de software como pilas, gráficos, etc. Universidad de Sonora Programación Avanzada
3
Programación Avanzada
Objetos El problema se ve como objetos que interactúan entre ellos. Universidad de Sonora Programación Avanzada
4
Programación Avanzada
Ejemplo Enviar flores. Suponga que Juan desea llevarle flores a una amiga en otra ciudad María. Como Juan no puede llevarlas personalmente, le encarga a una florista (Rosa) el envío. María recibe sus flores. Universidad de Sonora Programación Avanzada
5
Programación Avanzada
CB4 Ejemplo Enviar flores. Juan le solicita a Rosa un servicio. Rosa sabe cómo prestarle el servicio a Juan. Juan sabe que Rosa presta el servicio que el necesita. Rosa es responsable de prestarle el servicio adecuadamente a Juan. Juan desconoce qué le implica a Rosa prestarle el servicio. Universidad de Sonora Programación Avanzada
6
Programación Avanzada
Ejemplo Enviar flores: María Mensajero Arreglista Productor Juan Rosa Recolector Florista Local Universidad de Sonora Programación Avanzada
7
Programación Avanzada
Conceptos básicos En programación orientada por objetos un programa es una comunidad de agentes (objetos) que interactúan entre ellos. Cada objeto tiene un rol en la solución del problema. Cada objeto provee un conjunto de servicios (o métodos) Los servicios de un objeto son usados por otros objetos. Universidad de Sonora Programación Avanzada
8
Programación Avanzada
Conceptos básicos Los objetos se comunican entre ellos a través de mensajes: Un mensaje encapsula la petición de un servicio. El receptor del mensaje presta el servicio y devuelve una respuesta al que solicitó el servicio. Universidad de Sonora Programación Avanzada
9
Conceptos básicos ¿Qué sabe hacer la ventana?
Ventana ejemplo Un objeto ventana gráfica ¿Qué sabe hacer la ventana? ¿Cuáles servicios ofrece? La ventana se sabe: cerrar abrir cambiar de tamaño pintar mover Además, sabe: dónde está, si está visible o no ... ¿Cómo se le solicitan los servicios? Universidad de Sonora Programación Avanzada
10
¿Cómo se le solicitan los servicios?
Conceptos básicos Ventana ejemplo Objetos figuras geométricas: un triángulo un rectángulo un círculo Las figuras geométricas se saben: Pintar agrandar .. Además, saben: dónde están, si están visibles o no ... ¿Qué saben hacer las figuras geométricas gráficas? ¿Cómo se le solicitan los servicios? Universidad de Sonora Programación Avanzada
11
Programación Avanzada
Conceptos básicos Ventana ejemplo La ventana tiene la responsabilidad de solicitar a las figuras geométricas que se pinten Las figuras geométricas tienen la responsabilidad de saberse pintar y de hacerlo cuando se lo soliciten La ventana tiene que saber cómo hacer la solicitud. La figura geométrica tuvo que haber hecho público cómo usar sus servicios Universidad de Sonora Programación Avanzada
12
Programación Avanzada
Conceptos básicos La comunicación se hace a través del envío de mensajes Universidad de Sonora Programación Avanzada
13
Programación Avanzada
Conceptos básicos Modelar consiste en identificar (abstraer) qué objetos hay en el mundo del problema, cómo son, cómo se comportan y cómo se relacionan. Universidad de Sonora Programación Avanzada
14
Programación Avanzada
Clases Son prototipos o modelos que definen las variables y métodos comunes a todos los objetos de cierto tipo. Universidad de Sonora Programación Avanzada
15
Programación Avanzada
Clases Ejemplos: Clase automóvil. Clase persona. Clase vuelo (de avión). Universidad de Sonora Programación Avanzada
16
Programación Avanzada
Clases Las clases: Tienen atributos. Tienen un estado. Ofrecen servicios. Universidad de Sonora Programación Avanzada
17
Programación Avanzada
Ejemplo La clase automóvil. Atributos: Marca, modelo, color, año, dueño, etc. Estado: Prendido o apagado. Servicios: Prende auto, apaga auto. Universidad de Sonora Programación Avanzada
18
Programación Avanzada
Ejemplo Clase vuelo de avión. Atributos: Número de vuelo, hora, línea aérea, etc. Estado: Activo, cancelado, demorado, etc. Servicios: Cancela vuelo, activa vuelo, cambia hora, etc. Universidad de Sonora Programación Avanzada
19
Programación Avanzada
¡Importante! Los servicios afectan y pueden cambiar los valores de los atributos y/o del estado de la clase. Universidad de Sonora Programación Avanzada
20
Programación Avanzada
Objetos Los objetos son instancias de una clase. Los objetos tienen valores específicos para los atributos y el estado. Universidad de Sonora Programación Avanzada
21
Programación Avanzada
Ejemplo Objeto: vuelo 222 Atributos: Número de vuelo: 222 Hora de salida: 9AM Línea aérea: Patito Airlines. Estado: Demorado. Servicios: Ofrece los servicios de su clase. Universidad de Sonora Programación Avanzada
22
Programación Avanzada
Interface Los servicios de las clases son descritos por una interface. En Java los servicios se le llaman métodos. Universidad de Sonora Programación Avanzada
23
Programación Avanzada
Diagramas Se usan diagramas para describir los atributos de la clase y los métodos que los afectan. Universidad de Sonora Programación Avanzada
24
Programación Avanzada
Interface Nombre de la clase Atributos/Campos/Datos Métodos/Servicios/Interface Universidad de Sonora Programación Avanzada
25
Programación Avanzada
Conclusión El envío de mensajes es la única forma para que un objeto realice una operación. Las operaciones son la única forma para cambiar el estado de los datos. Cuando esto se cumple, se dice que el estado interno del objeto (el valor de sus datos) está encapsulado; éste no puede ser manipulado directamente desde el exterior y su representación concreta es invisible. Universidad de Sonora Programación Avanzada
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.