Diagrama de Clases

8
Diagrama de clases Los diagramas de clases muestran las diferentes clases que componen un sistema y cómo se relacionan unas con otras. Se dice que los diagramas de clases son diagramas «estáticos» porque muestran las clases, junto con sus métodos y atributos, así como las relaciones estáticas entre ellas: qué clases «conocen» a qué otras clases o qué clases «son parte» de otras clases, pero no muestran los métodos mediante los que se invocan entre ellas. Umbrello UML Modeller mostrando un diagrama de clases Clase Una clase define los atributos y los métodos de una serie de objetos. Todos los objetos de esta clase (instancias de esa clase) tienen el mismo comportamiento y el mismo conjunto de atributos (cada objetos tiene el suyo propio). En ocasiones se

description

Diagrama de Clases

Transcript of Diagrama de Clases

Diagrama de clasesLos diagramas de clases muestran las diferentes clases quecomponen un sistema y cmo se relacionan unas con otras. Se diceque los diagramas de clases son diagramas estticos porquemuestran las clases, junto con sus mtodos y atributos, as como lasrelacionesestticasentreellas quclasesconocenaquotrasclases o qu clases son parte de otras clases, pero no muestran losmtodos mediante los que se in!ocan entre ellas."mbrello "#L #odeller mostrando un diagrama de clasesClase"na clase define los atributos y los mtodos de una serie de objetos.$odoslosobjetosdeestaclase%instanciasdeesaclase& tienenelmismo comportamiento y el mismo conjunto de atributos %cada objetostiene el suyo propio&. 'n ocasiones se utili(a el trmino tipo en lugarde clase, pero recuerde que no son lo mismo, y que eltrmino tipotiene un significado ms general.'n ), las clases estn representadas por rectngulos, con el nombrede la clase, y tambin pueden mostrar atributos y operaciones de laclase en otros dos compartimentos dentro del rectngulo.*epresentacin !isual de una clase en "#LAtributos'n "#L, los atributos se muestran al menos con su nombre, y tambinpueden mostrar su tipo, !alor inicial y otras propiedades. Los atributostambin pueden ser mostrados !isualmente + +ndica atributos pblicos # +ndica atributos protegidos - +ndica atributos privadosOperacionesLasoperaciones%mtodos& tambinsemuestanal menosconsunombre, y pueden mostrar sus parmetros y !alores de retorno. Lasoperaciones, al igual que los atributos, se pueden mostrar!isualmente + +ndica operaciones pblicas # +ndica operaciones protegidas - +ndica operaciones privadasPlantillasLas clases pueden tener plantillas, un !alor usado para una clase noespecificadaountipo. 'l tipodeplantillaseespecificacuandoseiniciaunaclase%esdecir cuandosecreaunobjeto&. Lasplantillase,istenen-..y seintroducirnen/a!a0.1conel nombrede2enricos.Asociaciones de clasesLas clases sepuederelaciones %estar asocionadas& conotras dediferentes manerasGeneralizacinLa 3erencia es uno de los conceptos fundamentales de laprogramacin orientada a objetos, en la que una clase recoge todoslos atributos y operaciones de la clase de la que es 3eredera, y puedealterar4modificar algunosdeellos, as comoa5adir msatributosyoperaciones propias.'n "#L, una asociacin de generalizacin entre dos clases, coloca aestas en una jerarqua que representa el concepto de 3erencia de unaclasederi!adadelaclasebase. 'n "#L, lasgenerali(acionesserepresentan por medio de una lnea que conecta las dos clases, conuna flec3a en el lado de la clase base.*epresentacin !isual de una generali(acin en "#LAsociaciones"naasociacinrepresentaunarelacinentreclases, y aportalasemnticacom6nylaestructurademuc3ostiposdecone,ionesentre objetos.Las asociaciones sonlos mecanismos que permite a los objetoscomunicarse entre s. 7escribe la cone,in entre diferentes clases %lacone,inentrelosobjetosrealessedenominacone,indeobjetoso enlace&.Las asociaciones pueden tener un papel que especifica el propsito dela asociacin y pueden ser unidireccionales o bidireccionales%indicando si los dos objetos participantes en la relacin puedenintercambiar mensajes entre s, o es 6nicamente uno de ellos el querecibe informacin del otro&. -ada e,tremo de la asociacin tambintiene un !alor de multiplicidad, que indica cuntos objetos de ese ladode la asociacin estn relacionados con un objeto del e,tremocontrario.'n "#L, lasasociacionesserepresentanpor mediodelneasqueconectanlasclasesparticipantesenlarelacin, ytambinpuedenmostrar el papel y la multiplicidad de cada uno de los participantes. Lamultiplicidadsemuestracomounrango8mn...m,9 de!aloresnonegati!os, conunasterisco%*& representandoel infinitoenel ladom,imo.*epresentacin !isual de una asociacin en "#LAcumulacinLas acumulaciones son tipos especiales de asociaciones en las quelas dos clases participantes no tienen un estado igual, peroconstituyen una relacin completa. "na acumulacin describe cmose compone la clase que asume el rol completo de otras clases que seencargandelaspartes. 'nlasacumulaciones, laclasequeact6acomo completa, tiene una multiplicidad de uno.'n "#L, las acumulaciones estn representadas por una asociacinque muestra un rombo en uno de los lados de la clase completa.*epresentacin !isual de una relacin de acumulacin en "#LComposicinLas composiciones son asociaciones que representanacumulaciones muy fuertes. 'sto significa que las composicionestambin forman relaciones completas, pero dic3as relaciones son tanfuertes quelas partes nopueden e,istirporsmismas. :nicamentee,istencomopartedel conjunto, ysi esteesdestruidolaspartestambin lo son.'n "#L, las composiciones estn representadas por un rombo slidoal lado del conjunto.Otros componentes de los diagramas de clasesLos diagramas de clases pueden contener ms componentes apartede clases.InterfacesLas interfaces son clases abstractas, lo que significa que no es posiblecrear instancias directamente a partir de ellas. ;ueden conteneroperaciones, peronoatributos. Lasclasespueden3eredar delasinterfaces %atra!s deunaasociacindereali(acin& y deestosdiagramas s es posible crear instancias.Tipo de datosLos tipos de datos son primiti!as construidas normalmente en algunoslenguajes de programacin.