Descargar la presentación
La descarga está en progreso. Por favor, espere
1
PROGRAMACION ORIENTADA A OBJETOS
UML Y JAVA PROGRAMACION ORIENTADA A OBJETOS
2
CLASE Implementación de un tipo de dato
Una clase sirve tanto de módulo como de tipo Tipo: Descripción de un conjunto de objetos (equipado con ciertas operaciones) Modulo: Unidad de composición de software
3
Cada clase: Se define en un archivo independiente Se carga en memoria cuando se necesita
4
public class MiClase { … }
5
OBJETO Instancia de una clase:
Unidad atómica que encapsula estado y comportamiento Un objeto puede caracterizar una entidad física Todos los objetos son instancia de una clase Todos los objetos de una misma clase comparten ciertas características: comportamiento y atributos
6
Todo objeto tiene: Identidad (puede distinguirse de otros objetos) Estado (datos asociados a el) Comportamiento (puede hacer cosas)
7
Objeto =Identidad + Estado + Comportamiento
Es independiente de su estado No cambia durante la vida del objeto
8
Esta dado por los valores de sus atributos
Estado: Esta dado por los valores de sus atributos Cada atributo toma un valor en un dominio El estado del objeto evoluciona con el tiempo Los atributos de un objeto no deben ser manipulables directamente por el resto de los objetos. Se protegen los datos de accesos indebidos Se distingue entre interfaz de implementación Se facilita el mantenimiento dfel sistema
9
Comportamiento Los métodos definen el comportamiento del objeto Agrupan competencias Describen acciones Nota: Relación competencia estado: Un avión no puede aterrizar si no esta en vuelo
10
Representación grafica de una clase
Una clase se representa con un rectángulo dividido: Nombre de la clase Atributos Operaciones
11
public class Cuenta { …. } Cuenta
12
private double balance; //saldo private double limit; //límite }
public class Cuenta { private double balance; //saldo private double limit; //límite } Cuenta -balance:double -limit:double
13
public class Cuenta { private double balance; //saldo private double limit; //límite public void ingresar(…).. public void retirar(…)… } Cuenta -balance:double -limit:double +Ingresar():void +retirar():void
14
private double balance; //saldo private double limit; //límite
public class Cuenta { private double balance; //saldo private double limit; //límite public void ingresar(double cantidad) balance=balance+cantidad; } public void retirar(double cantidad) balance=balance-cantidad; Cuenta -balance:double -limit:double +Ingresar(double cantidad ):void +retirar(double cantidad):void
15
RELACIONES ENTRE CLASES
DIAGRAMAS UML
16
Las relaciones existentes entre las clases nos indican como se comunican los objetos de esas clases entre si. Los mensajes navegan por relaciones existentes entre las distintas clases
17
Existen distintos tipos de relaciones:
Asociacion (conexion entre clases) Dependencia (relacion de uso) Generalizacion/especializacion (relaciones de herencia)
18
Asociación Es una relación estructural, la cual describe relación entre objetos. Cliente Dirección Vive en
19
Cuenta Cliente Unidireccional Cuenta Cliente -balance -Limite -fecha
+ingresar() +Retirar() Unidireccional Cuenta Cliente * Titular 1 -balance -Limite -fecha --nombre -apellido -direccion bidireccional
20
Cuenta Dinero Cuenta +ingresar() +Retirar() -balance: Dinero
21
class Cuenta { private Dinero balance; public void ingresar (Dinero cantidad); balance +=cantidad; } public void retirar (Dinero cantidad); balance-=cantidad; public Dinero getSaldo() return balance;
22
Multiplicidad Sginificado 1 Uno y solo uno 0..1 Cero o uno N..M Desde N hasta M * Cero o varios 0..* Cero o Varios 1..* Uno o varios (al menos uno)
23
Todo departamento tiene un director
Profesor Departamento Todo departamento tiene un director Un profesor puede dirigir un departamento Profesor Departamento * Todo profesor pertenece a un departamento A un departamento pueden pertenecer varios profesores Cliente Cuenta 0..* * Relación opcional Un cliente puede o no ser titular de una cuenta Relación obligatoria Una cuenta ha de tener un titular como mínimo
24
Casos particulares de asociaciones Relación entre un todo y sus partes
Agregación Casos particulares de asociaciones Relación entre un todo y sus partes Polígono Punto contiene *
25
Composición 1 barra titulo 0..2 cuerpo 0..1 ScrollBar Cabecera Ventana
Panel ScrollBar -titulo:Cabecera -Cuerpo: Panel -barra[2]: ScrollBar 1 0..2 0..1 titulo cuerpo barra
26
Dependencia Ecuación Math -coeficientes[3] + pow() + resolver()
+sqrt() + resolver()
27
Herencia (generalización y especialización)
Empleado Profesor Admin.
28
NIVELES DE ENCAPSULACION
Visibilidad Significado Java Pública Se puede acceder al miembro de la clase desde cualquier lugar public + Protegida Solo se puede acceder al miembro de la clase o desde una clase que herede de ella protected # Privada Solo puede acceder al miembro de la clase desde la propia clase private -
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.