You are on page 1of 34

CAPITULO 2

Los objetos
Objetivos
! !! ! Identificar objetos y establecer sus caractersticas.
! !! ! Identificar los objetos que forman la solucin a un problema
! !! ! Agrupar objetos similares en Clases.
! !! ! Identificar relaciones de composicin de objetos.
! !! ! Establecer relaciones de Jerarqua de Clases.
! !! ! Identificar mensajes entre objetos.
! !! ! Caracterizar la herencia de clases
! !! ! Representar la solucin a un problema por medio del diagrama de
clases
Introduccin
En estecaptulo seintroduceal lector en el enfoquedeobjetos, detal manera
quelasolucinaproblemas seadelanteconesteenfoque, el cual seconstituye
en la actualidad en un paradigma para el desarrollo de programas y sistemas
basadosenel computador engeneral. A findeinducir enel lector losconceptos
bsicos del enfoque de objetos, asociados con la solucin de problemas, se le
plantealasituacindeobtener unbloquedemaderaapartir deunrbol, conlo
cual se indica no solamente los objetos requeridos, sino sus relaciones,
caractersticas yfuncionalidadgeneral,detal maneraqueseobtengalasolucin
deseada. Por otro lado, a fin de identificar, caracterizar, agrupar y establecer
jerarquas de objetos, se lleva al lector a un escenario que le es familiar, su
Los objetos: Introduccin 2 - 2
habitacin, su cuarto, y se le invita a identificar los objetos que le son
familiares en su quehacer cotidiano.
Se presentan, con los objetos de ese escenario, los elementos para la
caracterizacin delos objetos queleson familiares, as como su pertenenciaa
grupos decaractersticas afines, quesedenominan clases. Seestableceapartir
de dicha pertenencia la jerarqua de las diferentes clases presentadas, para a
continuacin ilustrar los conceptos de herencia, adems se estudian las
relaciones y la comunicacin entre objetos para ilustrar el concepto de mensaje.
Seilustratambinel concepto decomposicin, mediantelaobservacindelos
diferentes componentes (que son tambin objetos) de algunos de los objetos
tratados, como la lmpara de mesa de noche o el equipo de sonido.
Una vez el lector se ha familiarizado con el mundo de los objetos en su
escenario familiar, sepresentanformalmente, los conceptos y definiciones ms
importantes del enfoquedeobjetos, los cuales servirn debaseparael trabajo
del desarrollo dedesarrollo desoluciones aproblemas, medianteprogramas en
lenguajeJ avaen los siguientes captulos, y las situaciones y temticas enellos
presentados.
Un problema
Nuestro alrededor esta formado por objetos de diversa ndole, unos son
naturales animados como los seres vivos, animales y plantas, y otros
inanimadoscomolosdel mundomineral. Loshaytambinartificialescomolos
construidos por el ser humano o por mquinas concebidas y elaboradas por l.
Vivimos dentro deun apartamento, en unaunidad residencial, en un barrio de
unacomunadeunaciudad, dentro deunaregin, queasu vez formapartede
unanacin. Conglomerados denaciones seubican y agrupan en continentes, y
todosecomounaagregacindeobjetos. Por dondesemirenohaysinoobjetos.
El sistemasolar, las galaxiasyel universoensuconjunto, sontambinobjetos.
Enel mundo delo microscpico eseencuentraotradimensindeladiversidad
de objetos, por ejemplo, las bacterias, las molculas, y en el campo de lo
artificial, los microscpicos circuitos en la microelectrnica y los dispositivos
que conforman. Todo el espectro del espacio est formado por objetos.
El concepto de sistemas, que no es sino otra manera de ver los objetos
interactuando unos conotros en el mundo, deunamanerams general, nos da
unaideadelo diverso y casi difcil quees enumerar los objetos enunasimple
lista. Estos, interactuando a fin de lograr un objetivo comn, dan tambin la
idea de la diversidad de sistemas y objetos existentes en el mundo que nos
rodea Estamos sumergidos enunmundodesistemas, enunmundodeobjetos.
Nosotros mismos, desde el punto de vista del enfoque de objetos, somos
Los objetos: Un problema 2 - 3
tambin un objeto. Este texto que se sigue es un objeto.
A findeilustrar demanerapreliminar el enfoquedeobjetos, encontrasteconla
solucinaproblemas dadaenel capitulo anterior, sepresentaacontinuacinel
siguiente problema:.
Problema No. 1:Se requiere de un bloque de madera de dimensiones
100x25x25 centmetros el cual Federico debe obtener a partir del tronco de un
rbol seco que se encuentra en la finca de su papa.
En lafigura1, seilustran los objetos queestn involucrados en el enunciado
del problema: Federicoconsuproblemaenmente, el rbol secoyel productoa
obtener o sea el bloque de madera de dimensiones dadas.
Para solucionar su problema, Federico contrata a Santiago, un experto
aserrador, y establecen los trminos del contrato para disponer del bloque de
madera. As mismo Santiago le indica de las herramientas en general que
utilizara en el desarrollo del trabajo.
Por ejemplo, algunos de las herramientas y objetos en general, incluido el
aserrador (que obviamente es tambin un objeto), se ilustran en la siguiente
figura.
Figura 1
Los objetos: Un problema 2 - 4
Por loprontoserequieredeunaescalera, unvehculo, escuadra, soga, serrucho,
cepillo, prensa, metro, mesadeaserrar, etc. Los cualessonherramientas queno
son otra cosa mas que objetos.
De esta manera se puede afirmar que, la solucin al problema de obtener un
bloquedemaderaapartir deun rbol, sepuedelograr medianteel uso delos
diferentes objetos o herramientas sealados, mas otros que an no se han
identificado. Con las funciones, mtodos u operaciones inherentes a cada uno
de los objetos se pueden llevara cabo diferentes labores como por ejemplo,
cortar las ramas conunamoto sierra, medir dimensiones conel metro, cepillar
una superficie con el cepillo, cuadrar los lados con la escuadra, alcanzar las
ramas del rbol con la escalera, etc.
Otro aspecto a resaltar es que, el aserrador es como el objeto principal, en el
sentido quees el encargado deponer enfuncionamiento todas las herramientas
para su uso en la solucin del problema.
Identificacin
Lasituacinquesepresentaacontinuacinutilizadaparaidentificar, describir y
caracterizar los objetos en la vida diaria, en el mundo real, corresponde al
escenario brindado por su habitacin. Se plantea un cuarto que corresponde
eventualmente, al lugar dehabitacindecualquieradeloslectoresdeestelibro.
Unasituacinhipottica, queel lector debeinterpretar deacuerdoasusituacin
particular, a fin de poder iniciar nuestro estudio de los objetos.
Usteddisponedeunacama, dos mesitas denocheunaacadalado delacama,
un tapete, televisor con su respectivo mueble. Sobreunamesadenoche una
Figura 2
Los objetos: Identificacin 2 - 5
grabadora, algunos CD y casetes. En la otra mesa de noche una lmpara, el
control remoto del televisor, y un reloj despertador. En su su armario de
madera, unbluejean, un pantalnnegro, unpantaln caf, unacamisablanca,
una camisa negra, correa negra, correa caf, entre otras, tambin guarda sus
zapatos, mocasines negros, mocasines caf, unos tenis, adems sus
implementos de aseo personal (desodorante, cepillo, entre otros), tambin
guardaunamaleta, las pantuflas y otras cuantas cosas ms. LaFigura2 ilustra
lo que pudiera ser su habitacin para nuestro ejemplo.
Como se podr observar, el cuarto contiene los objetos que se han indicado
antesmasotros, quepor sunmeroseralaboriososealasahora. Claroestaque
cuando est viendo televisin acostado en la cama, el lector tambin es un
objeto en el cuarto.
Unalistanumerada, delosobjetosidentificablesenlahabitacinseilustraenla
siguiente tabla:
Figura 3 Los objetos de su cuarto
Los objetos: Identificacin 2 - 6
1. Cama 11.Lmpara de mesa de noche 21. Tenis
2. Mesa de noche izquierda 12. Televisor 19 22. Zapatos Mocasn negros
3. Mesa de noche derecha 13.Control remoto 23. Zapatos Mocasn caf
4. Tapete persa 14. Reloj despertador 24. Maleta del colegio
5. Mueble para TV 15. Armario 25. Camiseta
6. Grabadora 16. Blue jean 26.Correa negra
7. CD Andres Segovia 17. Pantaln negro 27. Correa caf
8. CD Richard Clayderman 18. Pantaln caf 28. Desodorante
9. Casete Los Panchos 19. Camisa blanca 29. Cepillo de cabello
10. Casete Curso Ingles 20. Camisa negra 30. Pantuflas
Observe que en el listado de objetos de su habitacin hay objetos repetidos o
similares. Por ejemplo, haydos objetos mesa de noche, ladel ladoizquierdo
y la del lado derecho, as como Cds y casetes, camisas, correas y otros.
Figura 4
CdMusica
A. Segovia R.Clayderman
casetes
Los Panchos Curso Ingles
Pantalones
jean Pantaln
negro
Pantaln
caf
Correa
negra
Correa
caf
Correas
Zapatos
mocasin
negro
mocasin
caf
tenis
mesas de noche
mesa izquierda mesa derecha
Camisas
camiseta Camisa
blanca
camisa
negra
Los objetos: Identificacin 2 - 7
En lafigura No. 4, seilustran algunos objetos repetidos, agrupados segn sus
caractersticas generales.
Clases
En el enfoque de Objetos, la agrupacin de aquellos objetos que tienen
caractersticas y comportamiento similar, se denomina Clase. La Clase es
entonces, unaformadecarcter abstractodereferirseaagrupacionesdeobjetos
que tienen caractersticas similares y comportamiento similar.
A continuacin, selistan las Clases quecorrespondea los objetos repetidos y
agrupados que se encuentran en la habitacin, asignndoles un nombre
significativo:
Clases de
Objetos
MesaDeNoche
CdDeMusica
Casete
Pantaln
Camisa
Zapatos
Correa
El restodeobjetosdesuhabitacinquenoestnrepetidosensuhabitacin, sin
embargo, es posible que, en el resto de su casa existan otros similares, por
ejemplo otro televisor, otras camas, otras lmparas de noche, otros relojes
despertadores, etc. Si no ensucasa, enel barrio, o enel ultimo delos casos en
el almacndondefueadquiridocadaunodeesosobjetos. Locual significaque
los objetos que son nicos en su habitacin, estn agrupados en clases. Por
ejemplo, lacamadoble, hayqueidentificar si es posibleincluirladentrodeuna
clase, endondejuntoconotros objetosconcaractersticas similares selapueda
agrupar.
Obviamente existen muchas mas camas en el mundo. La cual es se las puede
agrupar en una clase denominada Camas. Es decir, su objeto agrupado en la
clase Camas, tambin tiene objetos similares que se encuentran en otras
residencias en la ciudad, o en otros cuartos de su casa. El ejercicio que se ha
hechoconel objetocama, tienecomofinayudarleacomprender msel trmino
clase. Si realizael ejercicio conlos dems objetos no repetidos, queanno se
hancatalogadoenunconjunto, sedarcuentaquecadaunodeellospertenecea
Los objetos: Clases 2 - 8
un conjunto del cual ellos son un objeto particular y que ese conjunto es una
clase.
Siguiendoel mismoprocesoparalos dems objetos presentes ensuhabitacin,
se puede elaborar entonces, el listado de objetos con la identificacin de su
respectiva clase.
Para la denominacin de nombres de objetos o identificadores de nombres de
objetos, sesiguelaregladeutilizar sustantivos quesean significativos, con la
condicin que la primera palabra es toda con minsculas y las siguientes
palabras sinespacio entreellas, seinicianconmayscula, las dems letras son
minsculas. Los identificadores o nombres paradenominar las clases siguenla
misma regla con la condicin que la primera palabra se inicia con mayscula.
Lasiguientetablailustraeselistadodeobjetos, consunombreysuagrupacin
en la clase respectiva:
Nombre objeto Nombre de la clase
cama Cama
mesaDeNocheIzquierda
mesaDeNocheDerecha
MesaDeNoche
tapete Tapete
muebleTv MuebleParaTV
grabadora Grabadora
cdASegovia
cdRClayderman
CdDeMusica
caseteLosPanchos
caseteCursoIngles
Casete
lmparadeMesaDeNoche Lmpara
televisor Televisor
controlRemoto ControlRemoto
reloj Reloj
armario Armario
blueJ ean
pantalnNegro
pantalnCaf
Pantaln
camisaBlanca
camisaNegra
Camisa
tenis
zapatosMocasnNegros
zapatosMocasnCaf
Zapato
correaNegra
correaCaf
Correa
desodorante Desodorante
Los objetos: Clases 2 - 9
Nombre objeto Nombre de la clase
cepilloDeCabello CepilloDeCabello
maleta Maleta
camiseta Camiseta
pantuflas Pantufla
La clase define las caractersticas comunes a todos los objetos que la
conforman. Por ejemplo, aunquelaclaseZapatoagrupaatodos los objetos con
caractersticas similares, cadaobjetoenparticular, por ejemplounpar detenis,
tiene valores especficos o propios para cada caracterstica. Todos los zapatos
tienen la caracterstica color, en los suyos el color de los tenis es blanco por
ejemplo. Laclaseposeelacaractersticacolor, el objeto en particular, tieneun
valor especfico para dicha caracterstica.
Parailustrar los valores especficos quetomanlos atributos o caractersticas de
un objeto en particular, el cual se ha agrupado en una clase, se toma como
ejemplo los objetos cdASegovia y cdRClayderman, agrupados en la clase
CdDeMusica. Lasiguientelistailustralas principales caractersticas delaclase
CdDeMusica, en la cual se ha indicado el nombre con que se denomina la
caracterstica y la notacin a utilizar en el texto:
Clase: CdDeMusica
Nombre Atributo Notacin de Atributo
Titulo CD tituloCD
Nombre del Artista nombreArtista
Ao de Grabacin aoGrabacion
Nombre Productor Fonogrfico nombreProductorFonogrfico
Lista de Canciones listaDeCanciones
Numero de Serie numeroSerie
Precio en pesos precio
AunqueunCDpuedetener mascaractersticas, comotamao, duracinyotras,
setomarn las indicadas como las caractersticas principales atener en cuenta
para la clase CdDeMusica. Ahora bien, todos los objetos de la clase
CdDeMusicatendrnpor lomenosesasmismascaractersticasoatributos, pero
cada una con un valor especfico.
Lanotacinparalosatributos delas clases, es similar alaseguidaenlenguajes
orientados a objetos, como es el caso del J ava, y serecomienda la utilizacin
de sustantivos compuestos por varias palabras que indiquen el significado del
atributo.
Como ya se ha mencionado antes, los atributos que se definen en la clase,
Los objetos: Clases 2 - 10
toman valores en cada uno de los objetos que hacen parte de ella. En el
siguientecuadrosehantomadosolamentedosobjetosdelaClaseCdDeMusica,
a fin de identificar sus atributos, asignndoles valores reales, pues hace
referencia a objetos concretos:
Atributos Clase Atributos cdASegovia Atributos cdRClayderman
tituloCD Serenata-Concierto guitarra Su piano mgico
nombreArtista Andres Segovia Richard Clayderman
aoGrabacin 1999 1998
nombreProductor Discos Fuentes Fonolux
listaDeCanciones Notas para Anna, Menuet I, Menuet II,
Marche I, Marche III, Marche II, Menuet
IV, Musete, Siciliana, Diferencias sobre
un tema, Preludio Vasco, Capricho
Catalan, Serenata.
Nosalgia, Sueos del maana, Matrimonio
de amor, El sol y las flores, Los latidos del
corazn, la esperanza, La fuga del tiempo,
Siempre se regresa, Los pesares, The child
in the silent morning, La cumparsita, A
media luz, El choclo, Volver, Adios pampa
mia, Caminito, Mi buenos aires querido,
Sus ojos se cerraron, El dia que me
quieras, Tomo y obligo, Mare it, Lucie,
Venezuela.
numeroSerie D16643 28475-69875
Cada objeto de la clase CdDeMusica tiene una definicin individual de sus
atributos, los cuales toman valores particulares que lo hacen diferente y
distinguible de otros. Esto se observa claramente en la tabla anterior.
Ahora bien, si se tuviera dos CD exactamente iguales, es decir que fueran
copias iguales, seranecesario adicionar unnuevo atributo quediferenciaralas
dos copias, por ejemplo un nmero consecutivo para indicar el nmero de la
copia. En cuyo caso en la clase CdDeMusica se debera tener en cuenta esa
caracterstica.
Se ha dicho que en las clases se definen las caractersticas comunes de los
objetos que pertenecen a ella. Que estas caractersticas se denominan
Atributos yquestosatributostomanvaloresnicosenunobjetoparticular. La
formacomoseorganizanlosatributosenladefinicindeunaclase, determinan
lo que se denomina la Estructura de la clase.
Tmese ahora el objeto grabadora, del cual es posible tener el nombre de la
clase con la misma denominacin que el objeto, solo que con mayscula la
primeraletradel nombredelaclase. Lanotacindel identificador paraobjetos
y clases indica claramente cual es el objeto y cual es la clase, por tanto los
nombres realmente son diferentes.
Los objetos: Clases 2 - 11
El objeto grabadoratienemuchos mas atributos queunCD, sinembargo, slo
se tendrn en cuenta algunos de ellos, como lo ilustrado a continuacin, en
donde se han sealado los atributos provenientes de la clase Grabadora, la
notacin de esos atributos y los valores de estos en el objeto grabadora:
Atributos clase
Grabadora
Notacin atributos de la clase
Grabadora
Valores para los atributos del objeto
grabadora
Marca marca Panasonic
Referencia referencia S-21
Dueo dueo J uan Andrs Lpez
Precio precio 200000
Puedeobservarseque, adiferenciadelaspantuflas, delamesadenoche, delos
tenis ylos jeans, el objeto grabadorarealizaoperaciones propias quees posible
identificar, comoreproducir Cd, reproducir casete, aumentar volumen, apagarse
y otras, segn indicaciones dadas por el usuario, presionando un botn de la
grabadora, o accionando el control remoto. Estas funciones uoperaciones que
realizan los objetos se denominan comportamiento. As como todos los
objetostienennombreyatributos, todoobjetotienecomportamiento, aunqueno
parezca evidente como en el caso de los tenis, las pantuflas o una camisa.
Obviamente estos tambin tienen comportamiento, por ejemplo amarrar el
cordn, o sino, cmo sepuedeatar el cordnsi no existeel mtodo respectivo
enunpar detenis. Enel caso delacamisa, abotonarlaes unmtodo, inherente
al objeto camisa.
En estos trminos, las clases como agrupaciones deobjetos tienen estructuray
comportamiento: laestructura definequcaractersticasvanatener losobjetos
agrupados enlaclasey el comportamiento definelas funciones uoperaciones
que van a realizar esos objetos. Dichas funciones se denominan mtodos.
Yadefinidaunaestructura paralaclaseGrabadora, basadaen algunos desus
Figura 5
.
.
Los objetos: Clases 2 - 12
atributos, secentraahoralaatencin ahoraen enumerar cules son algunas de
las funciones mtodos que realiza la grabadora y que determinan su
comportamiento.
Lagrabadorareproduceel sonido deunCD, reproduceel sonido deuncasete,
graba de CD a casete, graba de casete a casete, sintoniza emisoras, amplifica
ondas deradio, seenciendey apaga, aumentao reduceel volumendel sonido,
entre otras funciones.
Estas funciones del objeto grabadora se disponen gracias a las operaciones y
dispositivos quesehanpuesto enlagrabadoracuandofueensamblada. A estas
operaciones que implementan las funciones que realiza un objeto y que
constituyen el comportamiento deun objeto seles denominan mtodos. Estas
funciones las ofrecentodas las grabadoras del tipo delaqueseencuentraensu
habitacin. La siguiente tabla ilustra algunas de las funciones bsicas de la
grabadora y su respectiva notacin como mtodo:
Mtodos de la Clase Grabadora Notacin mtodos de la clase Grabadora
Reproducir sonido CD reproducirSonidoCD()
Reproducir sonido casete reproducirSonidoCasete()
Grabar de CD a casete grabarDeCDaCasete()
Grabar de casete a casete grabarDeCaseteACasete()
Sintonizar emisora sintonizarEmisora()
Reproducir sonido Emisora reproducirSonidoEmisora()
Encenderla encender()
Apagarla apagar()
Insertar CD insertarCD()
Retirar CD retirarCD()
Insertar casete insertarCasete()
Retirar casete retirarCasete()
Figura 6
reproducir sonido CD
reproducir sonido casete
grabar de CD a casete
grabar de casete a CD
sintonizar emisora
reproducir sonido emisora
Los objetos: Clases 2 - 13
Lanotacin quesesigueen lacolumnadeladerechadelatablaanterior para
referirse a los mtodos de una clase, recomienda que se utilicen nombres
compuestos que comiencen con el verbo que represente la funcin que el
mtodo va utilizar en minscula, seguido del los sustantivos que ayuden
claramente a definir la accin del mtodo. Cada uno de estos sustantivos que
siguen al verbo, deben empezar por mayscula. Incluye la notacin un par de
parntesis al final, que mas adelante se indicar su utilizacin.
Enadelantecuandosevayaareferir alaestructurayel comportamientodeuna
clase, de manera grfica, en lugar de utilizar una foto, o representacin de
acuerdo a los cuadros anteriores, se utilizar la notacin siguiente, propia del
enfoque de objetos:
La notacin para ilustrar la definicin de una clase, comprende entonces tres
reas o compartimientos dentro de un rectngulo: en la parte superior va el
nombredelaclase, enlaintermediavanlos atributos y enlaparteinferior los
mtodos. Debe tenerse en cuenta la notacin indicada para cada una de esas
partes.
Tomando otro objeto delahabitacin, lalmpara queestsobre lamesita, se
observa que pertenece a la clase Lampara. Esta lmpara puede tener como
atributos, lamarca, el nombre, lareferencia, el tipo debombillo queutiliza, el
voltaje, entreotros. Ensusfunciones, encender yapagar el bombillo, conectar o
desconectar alafuentedeenerga, quitar yponer el bombillo, yotros. Tomando
como ejemplo los mtodos, encenderBombillo, apagarBombillo,
conectarAFuente, desconectarAFuente, laclaseLamparaquedararepresentada
como:
Grabadora
marca
referencia
dueo
precio
reproducirSonidoCD()
reproducirSonidoCassette()
grabarDeCDaCassette()
grabarDeCassetteACassette()
sintonizarEmisora()
reproducirSonidoEmisora()
encender()
apagar()
insertarCD()
retirarCD()
insertarCasete()
retirarCasete()
Nombre de la clase
Lista de atributos
Lista de Mtodos
Los objetos: Clases 2 - 14
De esta manera se ha indicado que las clases poseen estructura y
comportamiento, los cuales son extensibles o heredadas a los objetos
representados. Laclasees como un patrn decarcter abstracto, queagrupaa
todos los objetos quecompartencaractersticas ycomportamiento similares. La
estructuraladeterminalos atributos y el comportamiento estdefinido por los
mtodos queimplementan las funciones querealizan los objetos agrupados en
esta clase.
Relacin de composicin
Enlaseccinanterior, seidentific ydefini laestructuray el comportamiento
de la clases Grabadora y Lampara. En esta parte se examinar en detalle los
objetos respectivos para identificar otro tipo de atributos.
Observandoendetalleel objetograbadora, sepuedereconocer quelagrabadora
tiene un lector de CD, dos baffles, radio, amplificador, dos caseteras, una
antena, un cableparaconectar al toma-corriente, 11 botones paracontrolar las
caseteras, 5botones paracontrolar el reproductor deCD, unbotncontrolador
del volumen, un botn controlador de cambio de funcin (el que permite,
prender, pasar de casete a CD a radio), entre otros.
Todos los elementos sealados, queforman al objeto grabadora, son depor s
tambin objetos: cada uno de los bafles, la antena, el radio, etc. Es decir, se
puedeafirmar que, el objeto grabadorasecomponedeotros objetos como los
indicados, sinquerer indicar queestos seanlos nicos objetos queformanala
grabadora. La figura 7 ilustra algunos de los objetos que conforman la
grabadora.
Lampara
marca
nombreLampara
referencia
tipoDeBombilloRequerido
encenderBombillo()
apagarBombillo()
conectarAFuente()
desconectarAFuente()
Figura 7 Lmpara de mesa de noche
encender bombillo
apagar bombillo
conectarAFuente
desconectarAfuente
Los objetos: Relacin de composicin 2 - 15
Se puede afirmar entonces que, en el mundo real, existen objetos que se
componen de otros objetos, o en otras palabras, que son agregado de muchas
partesindependientesquesonindispensablesdentrodel objetocompuesto. Pues
esas partes independientes queforman el objeto, en estecaso su grabadora, se
pueden distinguir como objetos tambin, pues dentro del mundo real, tambin
lo son.
Losdiferentesobjetos, componentesdeunagrabadora, sepuedenconseguir por
separado y ensamblar a su gusto. Por ejemplo, cuando se daaun parlante de
sta, se retira y se cambia por uno nuevo que se adquiere en un almacn de
artculos electrnicos.
Cada uno de estos elementos que hacen parte del objeto su grabadora y que
caracterizanalasgrabadorasagrupadasenlaclaseGrabadora, sonelementosde
alguna manera independientes que, juntos constituyen la grabadora.
Tomandoel casodelos5botones quepermitenoperar el reproductor deCD, se
puedeestablecer queestnagrupadosdentrodeunconjuntooclaseBotonesCD
y por lo tanto cada uno de ellos debera tener la misma estructura y similar
comportamiento.
Figura 8
reproductor CD
cable de alimentacin
bafles
botones de control
reproductor de casetes
antena
radio
amplificador
Los objetos: Relacin de composicin 2 - 16
Tomando en detalle la clase BotonesCd, los valores que podran tomar los 5
botones del reproductor deCD, del objetograbadora, seilustranenel siguiente
cuadro:
Atributos de clase
BotonesCD
Parar/Abrir
(stop/eject)
Pausa (pause) Adelantar
(Ffwd)
Devolver (rew) Reproducir (play)
nombre Parar/Abrir Pausa Adelantar Devolver Reproducir
etiqueta Stop/Eject Pause Ffwd Rew Play
icono
tamao 10x10 10x10 10x10 10x10 10x10
posicin 20,20 40,20 60,20 80,20 100,20
El comportamiento decadauno delos objetos botn, correspondealafuncin
que realiza y que se activa cuando se presiona o se libera sobre el icono o
smbolo respectivo.
Con el ejemplo de la grabadora y su conformacin por medio de diferentes
objetos, como los indicados en la figura, y especialmente para el caso de los
botones del reproductor de CD, se demuestra que existen objetos que estn
compuestos de otros objetos. En el enfoque de objetos, cuando un objeto se
formaapartir deotros objetos, como enel caso delagrabadora, lalmpara, el
televisor, y otros en su cuarto, se dice que existe la relacin de composicin.
Cuandoexistecomposicinentreobjetos, esdecir, cuandounobjetohaceparte
de otro, entonces el objeto compuesto se caracteriza tambin por ser la
agrupacin de uno o varios objetos. Esta caracterizacin en trminos de los
objetos quelo conforman, hacepartedesudefinicincomo objeto y por tanto
hacepartedeladefinicindelaclase. Enestesentido, lacomposicin comotal
es referenciadadentro del cuerpo delaestructuradelaclasequerepresentaal
Figura 9 Botones de la grabadora
play
rewind
forward
pause
stop/eject
Los objetos: Relacin de composicin 2 - 17
objeto compuesto. Es decir se establece dentro del cuerpo de los atributos.
Ahora sepuede sealar que, en laestructura o caractersticas deun objeto, se
incluyenlos atributos denominados simples, por ejemplo lamarca, el precio, el
dueo, laserie, y los quesepudieranentender como atributos o carcter5isticas
compuestas, es decir objetos quelo forman, por ejemplo, los bafles, el radio, la
antena. En las caractersticas se colocaran, los atributos simples y los objetos
que forman al objeto de la referencia.
Deestamanera, laestructuradelaclaseGrabadoraincluyendo lacomposicin
basada en algunos de los objetos que la conforman, queda de acuerdo a lo
indicado antes, segn se ilustra en el siguiente cuadro:
Atributos Clase
Grabadora
Notacin atributos de la
clase Grabadora
Valores para los atributos del objeto
Grabadora
marca marca GatoSilvestre
referencia referencia S-21
dueo dueo J uan Andrs Lpez
precio pecio 200000
Tiene objeto Lector CD objetoLectorCD LectorCD para grabadora S21, serie 00012
Tiene 2 objetos caseteras parObjetosCaseteras Casetera 1- serie 09373 y Casetera 2-serie
09374
Tiene cable al toma-
corriente
objetoCableTomaCorriente Cable Toma corriente serie 388734
Tiene antena objetoAntena Antena serie 244
Tiene radio objetoRadio Radio Zenith 123
Tiene amplificador objetoAmplificador Amplificador Aiwa 345
Tiene botones para
controlar las caseteras
listaBotonesCaseteras Boton Stop serie23, Boton Pause serie 23,
boton Ffwd serie 23, boton Rew serie 23,
botn Play serie 23, botn segunda casetera
Stop serie 24, botn segunda casetera Pause
serie 24, botn segunda casetera Ffwd serie
24, botn segunda casetera Rew serie 24,
botn segunda casetera Play serie 24,
botn segunda casetera Rec serie 34
Tiene botones para
controlar el reproductor de
CD
listaDeBotonesCD Botn Stop-Cd serie 45, Botn pause-Cd
serie 45, Botn Ffwd-Cd serie 45, botn Rew-
Cd serie 45, Botn Play-Cd serie 45
Tiene botn controlador del
volumen
botonControladorVolumen Botn Controlador Volmen serie 23
Tiene botn controlador de
cambio de funcin
botonCambioFuncion Botn Cambio Funcin serie 23
Ahora tomando nuevamente el objeto lmpara que tiene sobre la mesita de
noche del lado izquierdo. Seobserva queesta lmparaest compuestadeuna
basedemaderaformadapor dos esferas y unatablacircular demadera, por el
centro deellas pasaun tubo dealuminio de0,5centmetros dedimetro, tiene
ademsarandelasytuercasdefijacin, unbombillo, uncabletomacorriente, el
Los objetos: Relacin de composicin 2 - 18
portabombillo, el suiche y la pantalla.
Cada una de las partes indicadas son objetos tambin y stos objetos pueden
estar agrupados en clases y por lo tanto tienen estructura y comportamiento
definidos. Se tiene pues, que la lampara es un objeto en donde la relacin de
composicin es establecida por los objetos que la conforman.

Ahorahaciendo referenciaalaclaseLampara, en lasiguientetablaseilustran
sus atributos:
Atributos clase
Lampara
Notacin atributos clase
Lampara
Valores de atributos del objeto lampara
marca marca Particular Electric
referencia referencia PE-56A
dueo dueo J uan Andrs Lpez
voltaje voltajeAlimentacin 120 V
tiene objeto pantalla objetoPantalla Pantalla, aluminio-tela, S453
tiene objeto bombillo bombilloLampara SLR-45 70W
tiene objeto
portalampara
objetoPortalampara Buho Fg-987
tiene objeto base de
madera
baseDeMadera Base DF-45
tiene objeto suiche suicheLampara Sw-843
tiene cable-
tomacorriente
cableTomacorriente cable awt-15
Figura 10 Partes de la lmpara
pantalla
bombillo
porta bombillo
base de madera
suiche
cable tomacorriente
Los objetos: Relacin de composicin 2 - 19
Relacin de herencia
Se toma ahora los objetos para calzar, el par de tenis, el par de zapatos
mocasines de color caf y el otro par de mocasines de color negro.
Los objetos zapatos mocasines de color caf y zapatos mocasines de color
negro, selos puedeagrupar enlaclaseParZapatosMocasin. Como atributos de
la clase ParZapatoMocasin se pueden distinguir, entre otros: numero, marca,
tipo, color, tipo cuero, entre otros.
La tabla correspondiente a algunos de los atributos de la clase
ParZapatosMocasin y los valores que toma en los objetos
parZapatosMocasinCaf y parZapatosMocasinNegro, se muestra a
continuacin:
Atributos clase
ParZapatosMocasin
Valor atributos objeto
parZapatosMocasnCaf
Valor atributos objeto
parZapatosMocasnNegro
numero 39 39
marca CoronaAzul HushPopo
tipo clsico normal
color caf negro
tipoMaterial cuerina gamo
tipoHebilla ninguna Pequea-dorada
El objeto parZapatosTenis, figura 10, est agrupado dentro de la clase
ParZapatosTenis, lacual sepuededefinir conlos siguientes atributos y conlos
siguientes valores de atributos correspondientes al objeto parZapatosTenis, tal
como muestra el cuadro:
Figura 12 Tennis
Figura 11 Conjunto mocasines
Los objetos: Relacin de herencia 2 - 20
Atributos clase
ParZapatosTenis
Valor atributos objeto
parZapatosTenis
numero 39
marca Patitas Lindas
tipo para Trotar
color blanco y azul
tipoMaterial cuero y tela
tipoCordon Cilindro-tejido
Tanto el objeto par de parZapatosTenis como los objetos
parZapatosMocasnCafe y parZapatosMocasinNegro son zapatos porque le
permiten calzar sus pies, sin embargo ellos sediferencian por ejemplo, en que
los zapatos tenis le sirven para hacer deporte en cambio sus mocasines, para
vestir corrientemente y no para hacer deporte.
Si ambos tipos de objetos estn agrupados en clases respectivas,
ParZapatosTenis y ParZapatosMocasin, y sabiendo que cada uno de estos
objetos son zapatos en general, entonces deberan poder ser agrupados en una
clasecomnquelosincluyeaambos, por ejemplolaclaseParZapatos. Esdecir,
tantolos teniscomolos mocasinessonpares dezapatos, esosesabe. Luegolas
clase ParZapatosTenis y ParZapatosMocasin son pares zapatos, solo que
difieren en algunos de sus atributos y mtodos.
Al ser pares zapatos las clases ParZapatosTenis y ParZapatosMocasn, tienen
atributos similares, pero en cambio difieren en que, la clase ParZapatoTenis
tiene un atributo tipoCordon que la clase ParZapatosMocasn no tiene y esta
tieneunatributotipoHebillaquelaclaseParZapatoTenisnotiene. Por supuesto
los objetos parZapatosMocasn no tienen cordones, pero en lo dems ambas
clases son similares.
Con lo anterior entonces es posible establecer una clase mas general llamada
por ejemplo ParZapatos, que contenga los atributos que tanto la clase
ParZapatosTenis como la clase ParZapatosMocasn poseen.
A continuacin se relacionan los atributos que tendra la nueva clase
ParZapatos, que son prcticamente comunes a cualquier par de zapatos:
ParZapatos
numero
marca
tipo
color
tipoMaterial
Los objetos: Relacin de herencia 2 - 21
Como seesttratando el temadelos atributos, el compartimiento respectivo o
los mtodos no aparece en el grfico, pues se tratar mas adelante.
Obsrvese ahora un par de zapatos cualquiera, se compone de dos zapatos
obviamente, el derecho y el izquierdo, en otras palabras, de un objeto
zapatoIzquierdo y otro zapatoDerecho.
Debe observarse que, a la definicin de estructura de las clases
ParZapatosMocasinNegro, ParZapatosMocasinCafe y ParZapatosTenis, les
faltan los atributos correspondientes a los objetos zapatoDerecho y
zapatoIzquierdo que las componen.
Al ser el zapatoIzquierdo como el zapatoDerecho objetos, y quedifieren en la
posicino ladodel zapato, debenpertenecer aunaclasecuyo atributoposicin
o lado del zapato, especifique si es izquierdo o derecho.
Esta relacin debe explicitarse en las clases indicadas, ZapatosMocasinNegro,
ParZapatosMocasinCafeyParZapatosTenis, enlaformadedosatributosdentro
de ellas, que son objetos de las clases ZapatoIzquierdo y ZapatoDerecho.
La clase Zapato entonces tendr un atributo posicionZapato que define si un
objeto particular delaclasees unzapatoizquierdooderecho, locual dorigen
al objeto zapatoIzquierdo y al objeto zapatoDerecho.
LasclasesZapatoyParZapatossehandefinidopor separadodebidoal siguiente
argumento: un objeto zapatoIzquierdo o zapatoDerecho, no hace nada por si
solo, esdecir, unobjetozapatoSolo, yaseaizquierdooderecho, nohacenadasi
lafuncionalidadquehemos definido parastees ladecalzarlo. Por lotanto, la
clase ParZapatos, que es la que realmente agrupa el conjunto del zapato
izquierdo y el derecho, es la que debe controlar tanto la estructura y el
comportamiento, pues es la que representa la funcionalidad de permitirle a
usted calzarse. De esta manera la clase que representa al objeto zapatoIzquierdo
y al objeto zapatoDerecho, se denominar Zapato, con un solo atributo que
representa el lado o posicin, izquierda o derecha y que se denomina
posicionZapato, como se muestra en la siguiente figura:
Zapato
posicionZapato
Los objetos: Relacin de herencia 2 - 22
Con estas explicaciones, la definicin de los atributos de la clase ParZapatos
queda de la siguiente manera:
En esta definicin de la clase ParDeZapatos se est ilustrando una clase que
agrupa las generalidades de las clases ParZapatosTenis y ParZapatosMocasn,
es decir los atributosquesoncomunesaambas clases, puestoqueannoseha
tratado el problema de los mtodos o comportamiento..
EnlaclaseParZapatos serenenlos atributos comunes quecompartentanto la
clase ParZapatosMocasn como la clase ParZapatosTenis y en stas clases se
dejaranlos atributosquesololascaracterizanaellas, propiosdeellasosea, los
atributos tipoHebilla y tipoCordon respectivamente.
La representacin grfica de estas clases queda como ilustra la siguiente figura.
LalneaconlaflechaindicaqueParZapatosesunageneralizacindelasclases
ParZapatos
numero
marca
tipo
color
tipoMaterial
objetoZapatoIzquierdo
objetoZapatoDerecho
ParZapatos
numero
marca
tipo
color
tipoMaterial
objetoZapatoIzquierdo
objetoZapatoDerecho
ParZapatosMocasn
tipoHebilla
ParZapatosTeni s
tipoCordon
Los objetos: Relacin de herencia 2 - 23
ParZapatosTenis y ParZapatosMocasn. ParZapatos constituyeentonces lo que
se denomina una superclase, o sea una clase que agrupa a otras clases.
Como se puede observar, agrupando en la lase ParZapatos las caractersticas
comunes, se est evitando tener dos clases que siendo similares tengan
definiciones duplicadas decaractersticas. Dealgunamanerasedebeestablecer
que las clases ParZapatosMocasn y ParZapatosTenis estn contenidas,
agrupadas, o son de la clase ParZapatos.
Laagrupacin indicada, en dondeunaclase general agrupacaractersticas que
otras clases poseen, independiente de las caractersticas particulares que las
clases a ser agrupadas posean, se denomina jerarqua de clases.
La jerarqua se representa grficamente de acuerdo a a la figura anterior. La
flechasignificaquelas clases ParZapatosMocasin y ParZapatosTenis, toman o
heredan delaclaseParZapatos, todas las caractersticas desta, adems tienen
suspropiascaractersticas, tipoHebillaytipoCordonrespectivamente, lascuales
los hacen diferentes de otro par de zapatos.
Con lo anterior se puede afirmar que la clase ParZapatosMocasn es un
ParZapatosyquelaclaseParZapatosTenises un ParZapatostambin, yadems
que delas caractersticas que heredan dela claseParZapatos, tienen las suyas
propias.
A lajerarquaquerepresentaesteejemplo delaClaseParDeZapatos, tambin
se le denomina estructura de clases o jerarqua de
generalizacin/especializacin. Estarelacin deherenciaseestablecemediante
laidentificacin<<es un>> entreclases. Por tanto, enel diagramaanterior las
flechas indican la relacin <<es un>>.
A la clase ParZapatos, que es la clase general en la cual agrupa las clases
ParZapatosMocasn y la clase ParZapatosTenis, se le denomina Superclase, o
clase Padre. A las clases particulares queestn agrupadas dentro deunaclase
particular, en este caso la Clase ParDeZapatosTenis y la clase
ParDeZapatosMocasn se les denomina Subclases, clase hijas o clases
derivadas.
Tomandoel otroobjetoparacalzar quesonlaspantuflas, sepuedeobservar que
tambin pertenecen a la clase ParZapatos, solo que este objeto le sirve para
andar en su casa y difcilmente lo usara para ir a la universidad por ejemplo.
LaspantuflassonunParZapatoscmodos, por tantosedefinirunanuevaclase
denominadaPantuflas, queagrupealosobjetospantuflasengeneral. Obsrvese
queen estecaso seestusando un nombresimilar alaclase(Pantuflas) para
Los objetos: Relacin de herencia 2 - 24
denominar el objeto (pantuflas), slo que el nombre del objeto inicia con
minsculayel delaclaseconmayscula, segnlanotacinindicada, por tanto
son cosas diferentes.
A continuacin se indican algunos de los atributos de la clase Pantuflas y su
correspondiente valor en el objeto pantuflas:
Atributos clase Pantuflas Valores de atributos para el objeto
pantuflas
nmero 39
marca PetitePink
tipo Para la casa
color Blanco y amarillo mostaza
tipoMaterial peluche
tipoAdorno Cabeza de Winnie de Pooh al frente
objetoZapatoIzquierdo pantuflaIzquierda
objetoZapatoDerecho pantuflaDerecha
En notacin grfica, la clase Pantuflas queda:
Como la clase Pantuflas tiene caractersticas similares que las clases
ParZapatosMocasny ParZapatosTenis, entonces laclasePantuflas selapuede
agrupar tambin dentro delaclaseParZapatos, pues el objeto par depantuflas
es un tipo de ParZapatos.
Pantuflas
nmero
marca
tipo
color
tipoMaterial
tipoAdorno
objetoZapatoIzquierdo
objetoZapatoDerecho
Figura 13 Pantuflas
Los objetos: Relacin de herencia 2 - 25
Luego, el grfico conlas jerarquas declases alrededor delaclaseParZapatos,
queda como se ilustra en la siguiente figura, teniendo en cuenta que, para el
caso de las pantuflas, slo aparecern los atributos que le son propios, por
ejemplo tipoAdorno, los demas los heredar de la clase ParZapatos.
Unejerciciosimilar seharaparael casodelosmtodos. Setomanlosmtodos
de cada una de las clases inferiores, ParZapatosMocasn , ParZapatosTenis y
Pantuflas, y aquellos que son comunes se agrupan en la clase ParZapatos,
dejando en cadaclaseaquellas queleson propias y solo lepertenecen aellas.
Se deja al lector el ejercicio de los mtodos de la estructura indicada.
Mensajes entre clases
Ahorasetomael objetoreloj despertador, yserealizaalgunadesus funciones,
por ejemplo darle cuerda y ajustar la hora de la alarma, para que suene su
campana a una hora determinada.
Se sabe que este objeto debe ser tomado por otro objeto,en este caso por una
persona. Es decir que los objetos reloj despertador y persona se estn
relacionando. Se definirn las clases de estos objetos como se ha hecho con
otros objetos anteriormente.
En primer lugar se toma la clase RelojDespertador y se definen sus atributos, as
como la asignacin de sus valores en el objeto relojDespertador, los cuales se
indican en la siguiente figura. Esta es la estructura de la clase RelojDespertador.
ParZapatos
numero
marca
tipo
color
tipoMaterial
objetoZapatoIzquierdo
objetoZapatoDerecho
ParZapatosMocasn
tipoHebilla
ParZapatosTeni s
tipoCordon
Pantuflas
tipoAdorno
Los objetos: Mensajes entre clases 2 - 26
Atributos de la Clase
RelojDespertador
Valores de atributos para
el objeto
relojDespertador
marca El Safiro
color Blanco nieve
tipoMaterial Metal-Plstico
tipoFunciones Alarma
nombreDueo J uan Andres Lopez
horaActual 8 de la noche
horaAlarma 5:00 de la maana
operacion de cuerda
Con el atributo tipoFunciones se significa que, hay algunos relojes
despertadores queno solo tienenalarmaparadespertar sino quetambinsona
lavez, radios, por ejemplo. Si hubiesesidotambinradio, secolocaraalarmay
radio, por ejemplo.
Ahora se define el comportamiento de la clase RelojDespertador, en trminos
dealgunas delas funciones querealizaunobjeto relojDespertador: suministrar
lahora, modificar suhoraactual, programar laalarma, activar laalarma, sonar
la alarma, detener el sonido de la alarma, darle cuerda, entre otras funciones.
Figura 14 Reloj despertador de cuerda
muestra hora actual
modificar hora actual
programar alarma
activar alarma
dar cuerda al reloj
Los objetos: Mensajes entre clases 2 - 27
Tomando ahoraal objeto personaquesostieneel relojDespertador enlamano,
para darle cuerda por ejemplo. El objeto persona indudablemente pertenece a
unaclasequesepuededenominar Persona, lacual tendras mismo, estructura
o sea atributos y comportamiento.
RelojDespertador
marca
color
tipoMaterial
tipoFunciones
nombre dueo
horaAlarmaActual
horaActual
mostrarHoraActual()
modificarHoraActual()
programarAlarma()
activarAlarma()
darleCuerda()
sonarAlarma()
Figura 15 Objeto persona usando objeto relojDespertador y clase Persona
Persona
numeroDeIdentificacin
fechaDeNacimiento
nombre
entretenimientos
horaDeLeventarse
horaDeAcostarse
colorCabello
colorOjos
levantarse()
baarse()
asistirAClase()
almorzar()
conversar()
gritar()
cenar()
encenderTV()
cambiarCanal()
sintonizarCanalTV()
apagarTV()
encenderGrabadora()
apagarGrabadora()
ajustarRelojDespertador()
apagarTV()
apagarLuz()
cepillarDientes()
darBuenasNoches()
acostarse()
dormirse()
Los objetos: Mensajes entre clases 2 - 28
Una persona tendr atributos como: nombres, apellidos, numero de
identificacin, ocupacin, programas de televisin favoritos, entretenimientos,
edad, fecha de nacimiento, estado civil, hora promedio de levantarse, tipo de
sangre, estatura, sexo, hora promedio de acostarse, color de cabello, color de
ojos, y desde luego muchos mas. Aqu se tomarn algunos relevantes.
Ahoradesdeel punto devistadel comportamiento, o seadelas funciones que
realiza un objeto persona, se pueden identificar a ttulo de ejemplo, algunas:
levantarse, baarse, desayunar, vestirse, subir al bus, asistir aclase, presentar
exmenes, almorzar, conversar con sus compaeros, mirar, gritar, conducir
bicicleta, comer, acostarse, ver televisin, sintonizar radio, ajustar alarma del
relojDespertador, apagar el televisor, apagar la luz, cepillarse los dientes,
dormir, roncar y posiblemente caminar dormido.
Respecto de los mtodos que conforman el comportamiento de una clase,
dependiendodesumecanismodeactivacin, puedenclasificarseendosgrandes
grupos:
1. Mtodos que implementan las funciones propias de la clase
Por ejemplo, en el caso de la clase Persona, mtodos que implementen
funciones propias delaclasesonlevantarse(), baarse(), almorzar(), cenar
(), acostarse(), dormir(), encenderGrabadora(), sintonizarCanalTV(), entro
otros, puestoquesonactividades propias delaPersonayquesedancomo
unarutinaensuvida, esdecir, lasrealizaindependientedel daydel lugar.
Para el caso del relojDespertador pueden ser sonarAlarma(),
suministrarHora(), acabarCuerda(), entre otros.
Tambin podra sealarse que este tipo de comportamientos se hacen de
manera autnoma.
2. Mtodos que implementan funciones que dependen de sucesos o eventos
generados por otros objetos.
Los mtodos que implementan funciones que dependen de sucesos o
eventos generados por otros objetos, como conversar(), gritar(), rer(),
prepararExamen(), etc. Se sabe que conversar(), depende de sucesos o
eventos generados por otros objetos, por ejemplo, necesitaencontrarsecon
alguien iniciar conversacin con usted.
Para este tipo de comportamientos, se puede sealar que son
comportamientos inducidos por eventos generados por otros objetos.
Seconcluyeque, hay mtodos quesonpropios delaclasey serealizanporque
Los objetos: Mensajes entre clases 2 - 29
hacenpartedesurutinao sonautnomos y otros mtodos quesolo serealizan
dependiendodeloquepaseconotrosobjetosycmoafectenstos alaclase, o
sea mtodos inducidos.
El objeto persona se relaciona con los objetos parZapatosMocasnNegros, ya
quesecalzaconellos, conel objeto lmpara, porquees quin laenciendey la
apaga. Lo mismo pasa con la grabadora y con el televisor. Con el objeto
relojDespertador porque es quien lo programa para activar la alarma. Se
relacionaconlacama, porqueen elladuermey as sepuedecontinuar conel
restodeelementosuobjetosdelahabitacin. Sepuedeafirmar quequienhabita
en lahabitacin serelacionacon todos los objetos delahabitacin, usndolos
segn sus funciones.
Paraencender el objeto televisor, sedebecojer el bjeto controlRemotoDeTv y
presionar el botn de encendido (Power). La siguiente es una descripcin
simplificada de la estructura y comportamiento general del
controlRemotoDeTV, que pertenece a la clase ControlRemoto.
Algunos atributos
Clase ControlRemoto
Valores de atributos para el objeto
control RemotoDeTv
marca Pony
tiene conjuntoPilas tipo pilaAA
conjuntoBotones Power, Muting, Sep, Display,
TV/Video, 1, 2, 3, 4, 5, 6, 7, 8, 9,
SubirCanal, BajarCanal, subirVolumen,
BajarVolumen
tiene forroControl Cuero-234
La siguiente es la representacin de la clase ControlRemoto:
Control Remoto
marca
conjuntoPilas
conjuntoBotones
forroControl
enviarSealEncenderTelevisor()
enviarSealApagarTV()
enviarSealCambiarCanalTV()
subirVolumen()
bajarVolumen()
activarMuting()
activarVideo()
activarModoSleep()
Los objetos: Mensajes entre clases 2 - 30
Obviamente un objeto controlRemotoDeTv tiene muchos mas atributos y
mtodos, aqu solo se han sealado algunos.
Sesuponequeel botnPower desuobjetocontrolRemotosehapresionado, lo
cual implica que el objeto persona est usando el control, es decir, se est
relacionando el objeto persona con el objeto controlRemoto. Por otro lado, el
objeto controlRemoto en ese instante, se est relacionando con el objeto
televisor, yaqueal presionarseel boton Power, seleenviaunaseal al objeto
televisor haciendo que este se encienda, mediante la ejecucin del mtodo
enviarSealEncenderTelevisor().
Alrecibir laseal enviadapor el objeto controlRemoto, seactivaenel objeto
televisor el mtodo encenderTelevisor(), haciendo que efectivamente este se
encienda y aparezca una imagen en pantalla.
Cuando sevaacambiar el canal actual queseestvisualizandoenel televisor,
entones se oprime el botn correspondiente al canal, por lo tanto el objeto
persona est activando otro mtodo de su televisor mediante el objeto
controlRemoto. Estemtodorequieredeunsucesooeventodeotroobjetopara
activarse, luegopuedeclasificarsecomodel tipo2odelos querequierendeun
suceso o evento generado por otro objeto para ser activados.
Figura 16 Objeto persona usando objeto controlRemoto, que activa objeto televisor
control remoto
televisor
persona
Los objetos: Mensajes entre clases 2 - 31
Conestosepuedeentender que, existenobjetosqueserelacionanconotrospor
medio de rdenes y que esas rdenes se dan a travs de mensajes. Esos
mensajes entonces activan mtodos que requieren de ellos para comenzar a
realizar laoperacinquerepresentany queesos mensajes activanmtodos que
se pueden clasificar dentro del tipo de aquellos mtodos que requieren de un
suceso o evento producido por otro objeto para poder activarse.
Enconclusin, laactivacindemtodos sellevaacabomedianteel mecanismo
de envio de mensajes. Bien por parte de objetos externos al objeto en referencia,
o bien por mensajes enviados por otros mtodos internos del objeto referencia.
Diagrama de clases del problema
Retomando el problemaplanteado al principio delaunidad, acercadel bloque
demaderaquesedebeobtener apartir deuntronco derbol seco, los objetos
que se han identificado que pueden servir para solucionarlo, se los puede
representar cadauno, por mediodelaclasecorrespondiente, comoseilustraen
la siguiente figura.
Clases que organizadas en conjunto, se identifican como la solucin a un
problema, en trminos de los conceptos asociadas con los objetos que
representan. No se han colocado ni atributos, ni mtodos en las clases, con lo
cual se hace referencia al concepto, por ejemplo el concepto Serrucho, que
desde luego hace referenciaauna claseSerrucho, pero que aesta alturadela
solucin del problema no se tiene claro a cual objeto serrucho, de cual clase
especfica se hace referencia, por eso se los denomina conceptos.
Figura 17 Identificacin de clases
Los objetos: Diagrama de clases del problema 2 - 32
Como se puede observar, en esta figura estn indicadas algunas de las clases
queseutilizanenlasolucindel problema, sinembargo ni sus atributos ni sus
mtodos se han indicado. El lector debe llenar estos campos con datos
correspondientes aclases delavidareal y as setendraundiagramadeclases
de la solucin al problema.
Como se sabe, los objetos de la solucin se relacionan unos con otros,
especialmenteel objetoprincipal, el objetoaserrador, quienes el encargadode
usar atodoslosdems. Inclusive, el contratistaoseaFederico, esunobjetoque
usaal aserrador, paraqueesteuselas herramientas enlasolucindel problema
de obtener un bloque de madera a partir del rbol seco.
En trminos de las clase asociadas con los objetos, en la siguiente figura se
ilustran las relaciones entre los diferentes conceptos, respecto del aserrador,
puesto queeste, provenientedelaclaseAserrador, es el encargado deusar los
diferentes objetos. Las relaciones entre las clases y la clase Aserrador es una
relacindeuso. Obviamenteno es decomposicin, puesto queel aserrador no
se compone de esos objetos.
Figura 18 Conceptos asociados con la solucin al problema
Los objetos: Diagrama de clases del problema 2 - 33
Esteenfoquedesolucindeproblemaseslabasedelametodologaaseguir, la
cual ser tratada mas adelante.
Ejercicios
1. Identifiqueen su saln declaselos objetos existentes. Caractercelos como
objetos.
2. Tomelossiguientesobjetos: untelfonocelular, unacalculadoradebolsillo,
una lavadora elctrica, una licuadora, un horno microondas. Para cada uno de
llos:
Identificarlo y caracterizarlo como objeto.
Determinar sus atributos y mtodos.
Dibujar el esquema de representacin de la clase correspondiente.
3. Tome los siguientes animales domsticos, referidos a objetos reales que
existen en algn lugar: un perro, un gato, un loro, un caballo, un conejo.
Establecer sus atributos y caractersticas como objetos. Establecer la clase
Figura 19 Diagrama de clases solucin al problema
Los objetos: Ejercicios 2 - 34
queagrupaacadaunodeellos. Establecer lajerarquadeclasesdecadauno
de ellos hasta llegar a la superclase comn de SeresVivos.
4. Tome los siguientes objetos plantas, que usted localice en la realidad:
tomate, rosa, naranjo, zapayo, mango, frijol. Establecer sus atributos y
caractersticas como objetos. Establecer la clase que agrupa a cada uno de
ellos. Establecer lajerarquadeclases decadauno deellos hastallegar ala
superclase comun de SeresVivos.
5. Para cada uno de los objetos de los dos problemas anteriores, hacer la
representacin grfica, indicando slamente tanto los atributos como los
mtodos quelesonpropios, si los tiene, yaquelos dems sonheredados de
sus superclases o ancestros. Utilice la relacin de herencia.
6. Ilustre mediante un diagrama una jerarqua de generalizacin, donde las
clases puedan tener herencia de varias superclases.
7. Tomelos objetos del problemadeobtener un bloquedemaderaapartir de
un rbol y establezca las clases respectivas con sus atributos y mtodos.
8. Ilustre las relaciones de composicin para el caso de una bicicleta.
9. Identifiquelosobjetos involucrados enel casodel prstamoydevolucinde
material bibliogrfico en la Biblioteca de la Universidad.
10.Disear unaclaseRectngulo, conatributos largo y ancho, ambos convalor
por omisinde1. Laclasedebetener mtodos para calcular el permetro y
el rea. Debeagregarsemetodos paraverificar quelos valores suministrados
sean mayores que cero.
11.Disear una clase Tringulo, que tenga como atributos base y altura, as
mismo de mtodos para calcular su rea y permetro.
12.Disear unajerarquadeclases apartir delaclaseFigurasGeometricas, para
las clase Tringulo, Cuadrado, Circulo. En estas clases se implementarn
mtodos para calcular el rea y el permetro respectivamente.
13.Disear una claseFactorial que permita calcular el factorial de un numero.
14.Disear una clase Sumatoria para calcular la siguiente serie:
S =1 - 2! +3! +4! - 5! +6! +7! +8! - 9! +10! +11! ... n!
Use la clase factorial como parte de la solucin al problema.

You might also like