programacion orientada a objectos
OBJETOS
Master de Computación
II MODELOS y HERRAMIENTAS
UML
II.3 UML: Modelado estructural
II.3 UML: Modelado estructural
Elena Mediavilla
1
1
Concepto de objeto y de clase
• Objeto: Concepto, abstracción o cosa con límites bien
definidos y con significado para el problema que se está
manejando.
– Todos los objetos presentan una identidad, quelos hace
distinguibles, un estado y un comportamiento.
– El término identidad significa que los objetos se distinguen por su
existencia inherente y no por propiedades descriptivas que puedan
tener.
• Clase: Descripción abstracta de un grupo de objetos con
propiedades similares (atributos), comportamiento común
(operaciones), relaciones comunes con otros objetos y
semántica común.II.3 UML: Modelado estructural
Elena Mediavilla
2
2
Concepto de objeto y de clase
• Todos los objetos son instancias de una clase y la clase de
un objeto es una propiedad implícita del objeto.
– Cada objeto conoce su clase y la mayoría de los lenguajes de
programación orientados al objeto pueden determinar la clase de un
objeto en tiempo de ejecución.
• La agrupación en clases delos objetos permite la
abstracción de un problema:
– Las definiciones comunes, tales como nombres de clases y de
atributos se almacenan una vez por cada clase.
– Las operaciones se escriben una vez para cada clase ⇒ reutilización
de código.
II.3 UML: Modelado estructural
Elena Mediavilla
3
3
Concepto de objeto y de clase
•
En UML, una clase es un tipo de clasificadorcuyas características son
atributos y operaciones.
•
Símbolos UML de clase y objeto.
Persona
Clase
Juan:
Persona
Marcos:
Persona
: Persona
Objetos
II.3 UML: Modelado estructural
Elena Mediavilla
4
4
Atributos
• Las clases tienen atributos que representan alguna
propiedad de la clase que comparten todos los objetos de
esa clase.
• Un atributo es una propiedadnombrada de una clase, que
describe un rango de valores que puede tomar esa
propiedad en las instancias.
– Por ejemplo, nombre, edad o peso son atributos de objetos
Persona.
• Cada nombre de atributo es único dentro de una clase, pero
cada atributo tiene un valor para cada instancia de la clase.
– Diferentes instancias de objetos pueden tener los mismos o
distintos valores para un atributodado.
– La identidad implícita del objeto permite distinguir objetos en que
todos los valores de los atributos sean idénticos.
II.3 UML: Modelado estructural
Elena Mediavilla
5
5
Atributos
• Un atributo debería ser un valor de datos puro, no un
objeto.
– Los valores de datos puros, a diferencia de los objetos, no tienen
identidad.
Persona
nombre: string
edad: integerJuan:
Persona
Marcos:
Persona
nombre = "Juan"
edad = 24
nombre = "Marcos"
edad = 52
Clase con Atributos
II.3 UML: Modelado estructural
Objetos con Valores
Elena Mediavilla
6
6
Operaciones
• Una operación es una función o transformación que puede
ser aplicada por o sobre objetos de una clase.
– Todos los objetos de una clase comparten las mismas operaciones.
–Una operación es la implementación de un servicio que puede
requerirse de cualquier objeto de la clase.
• Cada operación tiene a un objeto determinado como
argumento implícito y el comportamiento de la operación
depende de la clase de este objeto.
– Un objeto conoce su clase y, por tanto, la implementación correcta
de la operación.
II.3 UML: Modelado estructural
Elena Mediavilla
77
Operaciones
• Operación polimórfica: la misma operación toma formas
diferentes sobre clases diferentes.
– Por ejemplo, la operación mover para una figura de dos
dimensiones y para una figura de tres dimensiones.
• Método: implementación de una operación para una clase.
• Cuando una operación tiene métodos para diferentes clases
es importante que todos ellos tengan la misma...
Regístrate para leer el documento completo.