[ estándares de desarrollo ]
ESTÁNDARES DE PSEUDOCÓDIGO ORIENTADO A OBJETOS Y EVENTOS
oLoop Pag. 1
oLoop 1.2 Lenguae !e P"eu!o#$!%go O&%en'a!o a O(e'o" ) a E*en'o" E+a(o&a!o po& Ánge+ Augu"'o Ve+,"-ue Ve+,"-ue N/0e Á&ea !e De"a&&o++o !e So'a&e So'a&e Ca&&e&a !e Ingen%e&3a Ino&4,'%#a ) !e S%"'e4a" Un%*e&"%!a! Na#%ona+ 5a)o& !e San 5ao"
Pag. 2
oLoop 1.2 Lenguae !e P"eu!o#$!%go O&%en'a!o a O(e'o" ) a E*en'o" E+a(o&a!o po& Ánge+ Augu"'o Ve+,"-ue Ve+,"-ue N/0e Á&ea !e De"a&&o++o !e So'a&e So'a&e Ca&&e&a !e Ingen%e&3a Ino&4,'%#a ) !e S%"'e4a" Un%*e&"%!a! Na#%ona+ 5a)o& !e San 5ao"
Pag. 2
Contenido In'&o!u##%$n................................................. ........................................ ............................ ............. ....... ...... 1 O(e'%*o"................................................... ......................................... ..................................... . 1 De%n%#%$n !e+ Lenguae !e P"eu!o#$!%go....................................................................................2 6P"eu!o#$!%go o&%en'a!o a o(e'o"7......................................................................................2 E8p&e"%one".................................................... ........................................ ............................... ....... ...... . 9 S%n'a8%" !e +a" e8p&e"%one".....................................................................................................9 E8p&e"%one" "%4p+e"................................................................................................................: Ope&a!o&e"...................................... ........................................ ......................................... ............ ; Sen'en#%a"....................................................... ........................................ .............................. ....... ...... . < Sen'en#%a" "%4p+e"..................................................................................................................< Sen'en#%a" !e a"%gna#%$n !e Va+o&e"......................................................................................< Sen'en#%a" !e 4en"ae...........................................................................................................< Sen'en#%a" !e en'&a!a="a+%!a...................................................................................................> Sen'en#%a" #o4pue"'a"...........................................................................................................> Sen'en#%a" !e !e#%"%$n o #on!%#%ona+e"..................................................................................> I'e&a#%one"............................................... ......................................... ............................ ........... ....... .... ? C+a"e" ) O(e'o".........................................................................................................................1@ De#+a&a& C+a"e".....................................................................................................................1@ De#+a&a#%$n !e In"'an#%a" !e C+a"e" O(e'o".....................................................................11 De#+a&a#%$n !e !e%n%#%$n !e 5'o!o"...................................................................................11 De#+a&a#%$n !e p&op%e!a!e"..................................................................................................1: B%(+%o'e#a" !e #+a"e".............................................................................................................1; Po+%4o&%"4o..........................................................................................................................1; Co4en'a&%o"...............................................................................................................................1> Je&a&-u3a !e C+a"e" p&e!e%n%!a"...............................................................................................1? La #+a"e" Co4ponen'e".............................................................................................................1 A'&%(u'o" #o4une" CCo4ponen'e........................................ ...................... ............. ....... ............. ........... .... 1 V%"ua+%a& ) e!%'a& 'e8'o..........................................................................................................1 Pe&4%'%& -ue e+ u"ua&%o aga e+e##%one" "%4p+e"...................................................................2@ Con'&o+e" e"pe#%a+%a!o".......................................................................................................29 5aneo !e L%"'a"...................................................................................................................2: F%#a" CF%#a.....................................................................................................................2; La #+a"e CFo&4u+a&%o.............................................................................................................2< La #+a"e CAp+%#a#%$n.............................................................................................................2< T&a'a4%en'o !e E*en'o"..............................................................................................................2 I4p+an'a& e*en'o" e"',n!a&...................................................................................................2 E8#ep#%one"...............................................................................................................................91 P&o'e##%$n !e Sen'en#%a"......................................................................................................91 T&a'a4%en'o !e E8#ep#%one".................................................................................................91 Gene&a#%$n 4anua+ !e E8#ep#%one".....................................................................................99 E8#ep#%one" p&e!e%n%!a"......................................................................................................99 O(e'o" E"pe#%a+e".....................................................................................................................9; A&&eg+o"............................................... ......................................... .......................... ............. ....... ........ .. 9; Apun'a!o&e".................................................... ........................................ ..................... ............... ............. ......... .. 9< E"'&u#'u&a"............................................................................................................................9> Enu4e&a#%one"......................................................................................................................9> In'e&a#e"...............................................................................................................................9? A%*o"................................................... ......................................... ............................... ...... 9 Ee4p+o" !e u"o !e oLoop.........................................................................................................:@ De#+a&a#%$n !e C+a"e" ) 5'o!o"..........................................................................................:@ I4p+an'a#%$n !e 5'o!o"............................................................................................................:1 e&en#%a ) E8'en"%$n !e C+a"e".................................................................................................:2 B%(+%og&a3a..................................................................................................................................:< Suge&en#%a" pa&a +a e"#&%'u&a !e P"eu!o#$!%go.........................................................................:> In!en'a#%$n ...........................................................................................................................:> I!%o4a !e T&a(ao..................................................................................................................:> No'a#%$n !e I!en'%%#a!o&e"...................................................................................................:>
Pag. 9
Índice de Tablas Ta(+a .1. P&e#e!en#%a !e ope&a!o&e"........................................ ...................................... ............ ....... ..... 9 Ta(+a .2. A'&%(u'o" #o4une" pa&a +o" #o4ponen'e" en gene&a+.................................................1 Ta(+a .9. A'&%(u'o" !e CE'%-ue'a.................................................................................................1 Ta(+a .:. A'&%(u'o" !e CE!%#%$n..................................................................................................2@ Ta(+a .;. A'&%(u'o" !e CCa"%++a...................................................................................................21 Ta(+a .<. A'&%(u'o" !e CBo'$nRa!%o............................................................................................22 Ta(+a .>. A'&%(u'o" !e CBo'$nA##%$n..........................................................................................22 Ta(+a .?. A'&%(u'o" !e CBa&&aDe"p.............................................................................................29 Ta(+a .. A'&%(u'o" !e C%#a.......................................................................................................2; Ta(+a .1@. E*en'o" e"',n!a& #o4une" a +a" C+a"e" #o4ponen'e".............................................2 Ta(+a .11. E*en'o" !e +a" C+a"e" #o4ponen'e" e"',n!a&..........................................................9@ Ta(+a .12. E*en'o" #+a*e pa&a +a" C+a"e" #o4ponen'e".............................................................9@ Ta(+a .19. C+a"e" !e&%*a!a" !e CE8#ep#%$n..............................................................................9: Ta(+a .1:. Ee4p+o !e u"o !e P&e%o"........................................................................................:?
Pag. :
Índice de Ilustraciones I+u"'&a#%$n .1. S%n'a8%" !e a#'o&.............................. ......................................... .................. .......... ...... .... 9 I+u"'&a#%$n .2. S%n'a8%" !e *a+o& #on"'an'e "%n "%gno.....................................................................9 I+u"'&a#%$n .9. S%n'a8%" !e '&4%no.................................................................................................: I+u"'&a#%$n .:. S%n'a8%" !e e8p&e"%$n "%4p+e..................................................................................: I+u"'&a#%$n .;. S%n'a8%" !e e8p&e"%$n..............................................................................................: I+u"'&a#%$n .<. S%n'a8%" !e a#'o& !e !%&e##%$n........................................ ............................... ........ ...... ..; ; I+u"'&a#%$n .>. S%n'a8%" !e "en'en#%a..............................................................................................< I+u"'&a#%$n .?. S%n'a8%" !e "en'en#%a "%4p+e..................................................................................< I+u"'&a#%$n .. S%n'a8%" !e "en'en#%a !e a"%gna#%$n............................................... ................. ...... < I+u"'&a#%$n .1@. S%n'a8%" !e "en'en#%a #o4pue"'a............................. ....................... ............. ....... ............. ....... > I+u"'&a#%$n .11. S%n'a8%" !e "en'en#%a #on!%#%ona+. .......................................................................> I+u"'&a#%$n .12. S%n'a8%" !e "en'en#%a S%............................................... ................................... ..... > I+u"'&a#%$n .19. S%n'a8%" !e "en'en#%a Ca"o......................................... ................ ............. ....... ............. ........... .... ? I+u"'&a#%$n .1:. S%n'a8%" !e "en'en#%a &epe'%'%*a o %'e&a#%$n...........................................................? I+u"'&a#%$n .1;. S%n'a8%" !e "en'en#%a 5%en'&a".............................................................................? I+u"'&a#%$n .1<. S%n'a8%" !e "en'en#%a &epe'%&................................... ....................................... ...... ? I+u"'&a#%$n .1>. S%n'a8%" !e "en'en#%a Pa&a....................................... ........................ ............. ...... ............. ...... I+u"'&a#%$n .1?. S%n'a8%" !e !e#+a&a#%$n !e C+a"e.............................................. ................... ...... 1@ I+u"'&a#%$n .1. S%n'a8%" !e !e#+a&a#%$n !e O(e'o......................................................................11 I+u"'&a#%$n .2@. S%n'a8%" !e !e#+a&a#%$n !e !e%n%#%$n !e 5'o!o................................................11 I+u"'&a#%$n .21. S%n'a8%" !e L%"'a o&4a+ !e Pa&,4e'&o"..............................................................12 I+u"'&a#%$n .22. S%n'a8%" !e En*3o !e 5en"ae.............................................................................1: I+u"'&a#%$n .29. Ee4p+o !e E'%-ue'a............................................................................................1 I+u"'&a#%$n .2:. Ee4p+o !e Caa !e e!%#%$n................................................................................2@ I+u"'&a#%$n .2;. Ee4p+o !e Ca"%++a !e *e&%%#a#%$n......................................................................21 I+u"'&a#%$n .2<. Ee4p+o" !e Bo'$n !e &a!%o................................................................................21 I+u"'&a#%$n .2>. Ee4p+o" !e Bo'$n !e a##%$n.............................................................................22 I+u"'&a#%$n .2?. Ee4p+o !e Ba&&a !e !e"p+aa4%en'o.................................................................29 I+u"'&a#%$n .2. Ee4p+o !e Ba&&a !e !%a+....................................................................................2: I+u"'&a#%$n .9@. Ee4p+o !e Con'&o+ A&&%(a A(ao.........................................................................2: I+u"'&a#%$n .91. Ee4p+o !e L%"'a !e"p+ega(+e.............................................................................2: I+u"'&a#%$n .92. Ee4p+o !e F%#a................................................................................................2; I+u"'&a#%$n .99. Ee4p+o !e un Fo&4u+a&%o en (+an#o..................................................................2<
Pag. ;
Introducción Objetivos E"'e !o#u4en'o '%ene po& %na+%!a! -ue e"'a(+e#e& +o" e"',n!a&e" !e p&og&a4a#%$n ) no4en#+a'u&a !e o(e'o" !e p&og&a4a#%$n en p"eu!o#$!%go a u'%+%a& en +a" "e"%one" !e #+a"e ) +o" p&o)e#'o" !e !e"a&&o++o !e "o'a&e.
Pag. 1
Definición del Lenguaje de Pseudocódigo ¿Pseudocódigo orientado a objetos? E+ p"eu!o#$!%go "e p&e"'a pa&a un (uen !%"e0o !e"#en!en'e. En e+ 4un!o !e+ !e"a&&o++o o&%en'a!o a o(e'o"H !%"e0o !e"#en!en'e "%gn%%#a !e"#&%(%& #$4o "e #o4po&'an +o" o(e'o" ) +uego u'%+%a& +a !e"#&%p#%$n pa&a %!en'%%#a&+o" 4," !e'a++a!a4en'e o %!en'%%#a& o(e'o" "u(o&!%na!o". En #a!a n%*e+ !e a("'&a##%$nH +o" o(e'o" "e *an !e'a++an!o 4," a"'a -ue e+ !%"e0o a+#ana +o" o(e'o" e8%"'en'e" )a "ea en (%(+%o'e#a" o p&e!e%n%!o" en e+ +enguae 4%"4oH o (%en e+ #o4po&'a4%en'o !e"#&%'o no %4p+%#a +a e8%"'en#%a !e nue*o" o(e'o". E+ +enguae !e p"eu!o#$!%go -ue *a4o" a e"pe#%%#a& #on'%ene +a" e&&a4%en'a" -ue pe&4%'en e"pe#%%#a& e+ +uo !e+ #on'&o+ !e un a+go&%'4oH +a #&ea#%$n ) 4o!%%#a#%$n !e +a %no&4a#%$n ) +a &e+a#%$n en'&e +o" !%e&en'e" o(e'o" -ue o&4an e+ un%*e&"o !e +a "o+u#%$n. Pa&a !a& un eno-ue 4," #+a&o op'a4o" po& "u(&a)a& +a" pa+a(&a" &e"e&*a!a" !e+ +enguae.
Pag. 2
Expresiones La" e8p&e"%one" e"',n #o4pue"'a" po& operadores ) operandos . La 4a)o&3a !e ope&a!o&e" "on binarios H e" !e#%& u'%+%an !o" ope&an!o". Lo" !e4," "on unarios ) ne#e"%'an "$+o un ope&an!o. Lo" ope&a!o&e" (%na&%o" u'%+%an +a o&4a a+ge(&a%#a -ue #ono#e4o" po& ee4p+oH A B. Lo" ope&a!o&e" una&%o" "%e4p&e p&e#e!en a "u" ope&an!o" po& ee4p+oH B. En e8p&e"%one" 4," #o4p+ea"H +a" &eg+a" !e p&e#e!en#%a !e ope&a!o&e" a#+a&an e+ o&!en en -ue "e &ea+%an +a" ope&a#%one". Operadores
Precedencia
Categorías
KH No H =H !%*H 4o!H Y H H O
p&%4e&a 4," a+'a "egun!a 'ee&a #ua&'a /+'%4a
ope&a!o&e" una&%o" ope&a!o&e" !e 4u+'%p+%#a#%$n=!%*%"%$n ope&a!o&e" !e "u4a=&e"'a ope&a!o&e" &e+a#%ona+e"
=, <>, <, >, <=, >=
Tabla .1. Precedencia de operadores.
Pa&a +a p&e#e!en#%a a) '&e" &eg+a" (,"%#a"M • Un ope&an!o en'&e !o" ope&a!o&e" !e p&e#e!en#%a !%e&en'e a#'/a p&%4e&o #on e+ ope&an!o !e 4a)o& p&e#e!en#%a. • Un ope&an!o en'&e !o" ope&a!o&e" %gua+e" a#'/a p&%4e&o #on e+ !e +a %-u%e&!a. • La" e8p&e"%one" en'&e pa&n'e"%" "e e*a+/an p&%4e&o pa&a "e& '&a'a!a" #o4o un "$+o ope&an!o. La" ope&a#%one" !e %gua+ p&e#e!en#%a "e ee#'/an no&4a+4en'e !e %-u%e&!a a !e&e#a. A n%*e+ !e p"eu!o#$!%go e"'o e" (a"'an'e "%4p+eH pe&o en un +enguae !e p&og&a4a#%$nH e+ #o4p%+a!o& po!&3a &eo&!ena& +o" ope&an!o" pa&a op'%4%a& e+ #$!%go.
Sintaxis de las expresiones La" &eg+a" !e p&e#e!en#%a "e (a"an en +a "%n'a8%" !e +a" e8p&e"%one"H -ue "e #o4ponen !e a#'o&e"H '&4%no" ) e8p&e"%one" "%4p+e". La "%n'a8%" !e un factor e"M Factor --> Identificador | Constante | (Expresión) | no Factor | LlamadaMétodo | FactorDirección Identificador --> Referenciarre!lo |Referenciap"ntador | Referencia#aria$le Referencia#aria$le --> Letra % Letra | D&!ito | ' Constante --> D&!ito % D&!ito | CadenaCaracteres* l!straci"n .1. #inta$is de factor.
Una ++a4a!a a 4'o!o a#'%*a un 4'o!o ) !eno'a e+ *a+o& -ue "'e &e'o&na. E"'o +o *e&e4o" en +a "e##%$n !e ++a4a!a a 4'o!o". Un *a+o& #on"'an'e "%n "%gno '%ene +a "%gu%en'e "%n'a8%"M Constante+in+i!no --> Constante | CadenaCaracteres* Il"stración ,, +intaxis de .alor constante sin si!no,
Un a#'o& !e !%&e##%$n #a+#u+a +a !%&e##%$n !e una *a&%a(+e o 4'o!o. Lo a4p+%a&e4o" en +a "e##%$n !e apun'a!o&e". A-u3 p&e"en'a4o" a+guno" ee4p+o" !e a#'o&e"M Pag. 9
/ 0/ 12 (/ 3 4 3 5) +eno(/6) 7o Fin
%referencia a "na .aria$le %ap"ntador a "na .aria$le %constante %s"$expresión %llamada a "n método %ne!ación de "n .alor ló!ico o $ooleano
Lo" t%r&inos ap+%#an +o" ope&a!o&e" !e 4u+'%p+%#a#%$n ) !%*%"%$n a +o" a#'o&e"M 4érmino --> Factor 8 9peradorFactor Factor: 9peradorFactor --> ; | 6 | di. | mod | < l!straci"n .'. #inta$is de t%r&ino.
A-u3 a+guno" ee4p+o" !e '&4%no"M / ; 5 5 6 (1 - 5) (/ = ) ? (/ = 5)
Expresiones simples La" e$presiones si&ples ap+%#an +o" ope&a!o&e" !e "u4a=&e"'a a +o" '&4%no"M Expresión+imple --> 83 | -: 4érmino 8 9perador4érmino 4érmino: 9perador4érmino --> 3 | - | 9 l!straci"n .(. #inta$is de e$presi"n si&ple.
Co4o ee4p+o" !e e8p&e"%one" "%4p+e" po!e4o" 4en#%ona&M / 3 5 -/ #alor1 3 #alor I ; @ 3 1
Una e$presi"n ap+%#a +o" ope&a!o&e" &e+a#%ona+e" a +a" e8p&e"%one" "%4p+e"M Expresión --> Expresión+imple 89peradorRelacional Expresión+imple: 9peradorRelacional --> | => | = | > | = | > l!straci"n .). #inta$is de e$presi"n
A-u3 a+guno" ee4p+o" !e e8p&e"%one"M / 1,2 Fin => Error (I = @) (@ = A)
Pag. :
Operadores A n%*e+ !e p"eu!o#$!%goH po!e4o" !%*%!%& a +o" ope&a!o&e" en ope&a!o&e" nu4&%#o"H +$g%#o"H !e 'e8'oH apun'a!o&e" ) &e+a#%ona+e". Lo" ope&a!o&e" nu4&%#o" "on 4u) #ono#%!o" po& no"o'&o" H H H =H !%*H 4o! !e "'o"H e+ ope&a!o& 'a4(%n "e u"a pa&a #on#a'ena& 'e8'o" #a!ena". Lo" ope&a!o&e" nu4&%#o" ) 'a4(%n pue!en "e& ope&a!o&e" una&%o". Lo" ope&a!o&e" ) 'a4(%n "e ap+%#an a *a&%a(+e" o #on"'an'e" -ue #on'%enen *a+o&e" !e !%&e##%one"H o('en%en!o #o4o &e"u+'a!o o'&o *a+o& !e !%&e##%$n. E+ *a+o& !e I !%* J e" e+ #o#%en'e !e I = J &e!on!ea!o. O#u&&e un e&&o& en a4(o" '%po" !e !%*%"%$n "% J e" #e&o. E+ ope&a!o& 4o! &e'o&na e+ &e"'o !e +a !%*%"%$n !e "u" ope&an!o"H e" !e#%&M I mod @ I - (I di. @) ; @
E+ "%gno !e+ &e"u+'a!o e" e+ 4%"4o -ue e+ !e I. O#u&&e un e&&o& "% J e" #e&o. Lo" ope&a!o&e" NoH Y H ) O "on ope&a!o&e" +$g%#o"=(oo+eano". Ca(e 4en#%ona& -ue +o" +enguae" !e p&og&a4a#%$n -ue "opo&'an +a 4an%pu+a#%$n !e ope&an!o" a n%*e+ !e (%'"H #on"%!e&an a e"'o" ope&a!o&e" #o4o +$g%#o" a!e4," !e "u" ap+%#a#%one" (oo+eana". E+ ope&a!o& K "e u'%+%a en un a#'o& !e !%&e##%$n pa&a #a+#u+a& +a !%&e##%$n !e una *a&%a(+e. E"'e ope&a!o& &e'o&na +a !%&e##%$n !e "u ope&an!oH e" !e#%& #on"'&u)e un apun'a!o& a#%a e+ ope&an!o *ea 4," a!e+an'e apuntadores . FactorDirección --> 0Identificador l!straci"n .*. #inta$is de factor de direcci"n.
Pag. ;
Sentencias La" "en'en#%a" !e"#&%(en +a" a##%one" -ue pue!e ee#u'a& e+ a+go&%'4o. a) !o" '%po" p&%n#%pa+e" !e "en'en#%a"M +a" "en'en#%a" "%4p+e" ) +a" "en'en#%a" #o4pue"'a". +entencia --> +entencia+imple | +entenciaComp"esta l!straci"n .+. #inta$is de sentencia.
Sentencias simples Una "en'en#%a "%4p+e e" a-ue++a -ue no pue!e #on'ene& o'&a" "en'en#%a". Tene4o" +o" "%gu%en'e" '%po"M "en'en#%a" !e en'&a!a="a+%!aH "en'en#%a" !e a"%gna#%$n !e *a+o&e" ) "en'en#%a" !e 4en"ae. +entencia+imple --> +entenciasi!nación | +entenciaEntrada+alida | +entenciaRetorno | MensaBe | Retorno l!straci"n .. #inta$is de sentencia si&ple.
Sentencias de asignación de Valores La "en'en#%a !e a"%gna#%$n &ee4p+aa e+ *a+o& a#'ua+ a"o#%a!o a un %!en'%%#a!o& #on un nue*o *a+o& e"pe#%%#a!o po& una e8p&e"%$n o e"pe#%%#a una e8p&e"%$n #u)o *a+o& +o &e'o&na un 4'o!o. Identificador --> Expresión l!straci"n .-. #inta$is de sentencia de asignaci"n.
A+guno" ee4p+o" !e "en'en#%a" !e a"%gna#%$nM / 5 3 Fin (I > @) < (I = 1) I +eno(/) ; M
Sentencias de mensaje Una "en'en#%a !e 4en"ae a#'%*a un 4'o!o e"pe#%%#a!o po& un %!en'%%#a!o& !e 4'o!oH "% +a !e#+a&a#%$n !e+ 4'o!o #on'%ene una +%"'a !e pa&,4e'&o" o&4a+e"H en'on#e" +a "en'en#%a !e 4en"ae !e(e 'ene& una +%"'a #on#o&!an'e !e pa&,4e'&o" en +a "e##%$n !e !e#+a&a#%$nH a +o" pa&,4e'&o" "e +e" #ono#e #o4o parámetros formalesH a+ 4o4en'o !e+ pa"o !e 4en"ae" "e +e" #ono#e #o4o parámetros reales. T&a'a&e4o" e"'e '%po !e "en'en#%a" en +a "e##%$n !e Mensajes.
Pag. <
Sentencias de entrada/salida To!o +enguae !e p"eu!o#$!%go !e(e pe&4%'%& 4e#an%"4o" -ue #o4un%-uen nue"'&a "o+u#%$n #on e+ u"ua&%o. La 4a)o&3a !e ap+%#a#%one" ne#e"%'an una %n'e&a##%$n #on e+ u"ua&%o !e +a 4%"4a. Nue"'&o +enguae #uen'a #on !o" p&%4%'*a" (,"%#a" pa&a !%#o %n. La p&%4%'%*a Leer pe&4%'e &e#%(%& un *a+o& !e+ e8'e&%o& ) a+4a#ena&+o en +a *a&%a(+e #on e+ no4(&e -ue "e #o+o#a en +a "e##%$n !e %n'e&a. La p&%4%'%*a Escribir no" p&opo%ona un 4e#an%"4o pa&a e4%'%& e8p&e"%one" ) &e"u+'a!o" pa&a -ue pue!an "e& ap&e#%a!o" po& nue"'&o u"ua&%o. La 4ane&a #o4o "e e"#&%(en e" +a "%gu%en'eM leer ( Identificador ) escri$ir ( Identificador | Expresión )
Co4o *e&e4o" 4," a!e+an'eH "'o" "on 4'o!o" !e !o4%n%o p/(+%#oH po& 'an'o en'&an en +a #a'ego&3a !e métodos de biblioteca .
Sentencias compuestas La" "en'en#%a" #o4pue"'a" "on #on"'&u##%one" #o4pue"'a" po& o'&a" "en'en#%a" -ue "e ee#u'a&,n en "e#uen#%aH #on!%#%ona+4en'e "en'en#%a" #on!%#%ona+e"H o &epe'%!a4en'e "en'en#%a" %'e&a'%*a". +entenciaComp"esta --> +entenciaCondicional | +entenciaRepetiti.a | Excepción l!straci"n .1. #inta$is de sentencia co&p!esta.
Sentencias de decisión o condicionales La" "en'en#%a" !e !e#%"%$n o #on!%#%ona+e" "e+e##%onan +a ee#u#%$n !e una "e#uen#%a !e a##%one". +entenciaCondicional --> +entencia+i | +entenciaCaso l!straci"n .11. S%n'a8%" !e "en'en#%a #on!%#%ona+.
/ecisi"n con 0asta dos lternati2as 3#entencia #i4
La "%n'a8%" !e una "en'en#%a !e !e#%"%$n #on a"'a !o" a+'e&na'%*a" e"M si Expresiónooleana entonces +ec"encia de nG acciones 8 sino +ec"encia de mG acciones : fsi l!straci"n .15. #inta$is de sentencia #i.
La e8p&e"%$n !e(e 'o4a& un *a+o& +$g%#o !e *e&!a!e&o o a+"o. S% +a e8p&e"%$n 'o4a e+ *a+o& !e *e&!a!e&o +a "e#uen#%a a #on'%nua#%$n !e +a #+,u"u+a Entonces "e ee#u'a. S% +a e8p&e"%$n p&o!u#e un *a+o& !e a+"o ) e"', p&e"en'e +a pa&'e !e SinoH "e ee#u'a +a "e#uen#%a !e a##%one" a #on'%nua#%$n !e Sino "% +a pa&'e Sino no "e en#uen'&a p&e"en'eH no "e ee#u'a na!a.
Pag. >
/ecisi"n 67ltiple 3#entencia Caso4
La "en'en#%a Ca"o e"', #ono&4a!a po& una e8p&e"%$n e+ "e+e#'o& ) una &e+a#%$n !e "en'en#%a"H #a!a una p&e#e!%!a po& una #on"'an'e $ po& +a pa+a(&a O'&o. La" #on"'an'e" en Ca"o !e(en "e& /n%#a". caso Expresión .ale lternati.a1H +ec"encia de nG acciones lternati.a H +ec"encia de mG acciones ,,, 8 otroH +ec"encia de xG acciones : fcaso #alor % #alor | #alor ,, #alor l!straci"n .1'. #inta$is de sentencia Caso.
La "en'en#%a Ca"o ee#u'a +a "e#uen#%a !e a##%one" p&e#e!%!a po& +a #on"'an'e !e *a+o& %gua+ a+ !e+ "e+e#'o&. S% no e8%"'e 'a+ #on"'an'e ) e"', p&e"en'e +a pa&'e O'&oH +a "e#uen#%a !e a##%one" -ue "%gue a O'&o "e ee#u'a. S% no a) pa&'e O'&oH no "e ee#u'a na!a.
Iteraciones +entenciaRepetiti.as --> +entenciaRepetir | +entenciaMientras | +entenciaJara l!straci"n .1(. #inta$is de sentencia repetiti2a o iteraci"n.
teraci"n condicional de cero o &ás ciclos
Una "en'en#%a 5%en'&a" #on'%ene una e8p&e"%$n -ue #on'&o+a +a ee#u#%$n !e una "e#uen#%a !e a##%one". Mientras Expresiónooleana Kacer +ec"encia de nG acciones fmientras l!straci"n .1). #inta$is de sentencia 6ientras.
La e8p&e"%$n -ue #on'&o+a +a &epe'%#%$n !e(e 'o4a& un *a+o& !e *e&!a!e&o o a+"o. E"'a "e e*a+/a antes -ue "e ee#u'e +a "e#uen#%a !e a##%one" #on'en%!a. La "e#uen#%a !e a##%one" "e ee#u'a en o&4a &epe'%!a en 'an'o +a e8p&e"%$n "ea *e&!a!e&o. S% +a e8p&e"%$n !a a+"o a+ %n%#%oH )a no "e ee#u'a +a "e#uen#%a !e a##%one". teraci"n condicional de !no o &ás ciclos.
La "en'en#%a Repe'%& #on'%ene una e8p&e"%$n -ue #on'&o+a +a ee#u#%$n &epe'%!a !e una "e#uen#%a !e a##%one" !en'&o !e e"a "en'en#%a Repe'%&. Repetir +ec"encia de nG acciones Kasta Expresiónooleana frepetir l!straci"n .1*. #inta$is de sentencia repetir.
La e8p&e"%$n !e(e p&o!u#%& un &e"u+'a!o !e *e&!a!e&o $ a+"o. La" "e#uen#%a !e a##%one" en'&e +a" pa+a(&a" Repe'%& ) a"'a "e ee#u'an en "e#uen#%a a"'a -ueH a+ %na+ !e +a "e#uen#%a H +a e8p&e"%$n 'o4a un *a+o& !e *e&!a!e&o. La "e#uen#%a "e ee#u'a po&
Pag. ?
+o 4eno" una *e po&-ue +a e8p&e"%$n "e e*a+/a después !e +a ee#u#%$n !e #a!a %'e&a#%$n. teraci"n con n7&ero definido de ciclos.
La "en'en#%a Pa&a a#e -ue "e ee#u'e una "e#uen#%a !e a##%one" 4%en'&a" -ue "e a"%gna una p&og&e"%$n !e *a+o&e" a un %!en'%%#a!o& !e #on'&o+. Jara #aria$leControl desde #alorInicial a #alorFinal 8inc %3 | - #alorIncremento: Kacer +ec"encia de nG acciones fpara l!straci"n .1+. #inta$is de sentencia Para.
La "e#uen#%a !e a##%one" #on'en%!a en +a "en'en#%a Pa&a "e ee#u'a una *e pa&a #a!a *a+o& en'&e Va+In%# ) Va+F%n en %n#&e4en'o" Va+o&%n#&e4en'o. E+ %!en'%%#a!o& !e #on'&o+ "%e4p&e #o4%ena en e+ *a+o& Va+o&In%#. Cuan!o +a "en'en#%a Pa&a u"a De"!eH e+ *a+o& !e+ %!en'%%#a!o& "e %n#&e4en'a o !e#&e4en'a "eg/n e+ "%gno e"pe#%%#a!o en Va+o&%n#&e4en'o "% e"', p&e"en'e o en "u !ee#'o "e %n#&e4en'a en unoH e"'o po& #a!a &epe'%#%$n. S% e+ %n#&e4en'o e" po"%'%*o ) Va+In%# e" 4a)o& -ue Va+F%n en'on#e" no "e ee#u'a +a "e#uen#%a !e a##%one". S% e+ %n#&e4en'o e" nega'%*o ) Va+In%# e" 4eno& -ue Va+F%nH +a "e#uen#%a !e a##%one" no "e ee#u'a.
Pag.
Clases y Objetos Una #+a"e e"H a+ %gua+ -ue +o" n/4e&o"H e+ 'e8'o ) +o" (oo+eano"H un '%po e"pe#%a+ !e !a'o". En "u #a"o #on"%"'e !e un n/4e&o %o !e #o4ponen'e". Una #+a"e pue!e e"'a& #o4pue"'a po& a'&%(u'o" ) 4'o!o". Una instancia !e una #+a"e e" #ono#%!a #o4/n4en'e #o4o o(e'o. Lo" o(e'o" "e #&ean u'%+%an!o +o" #on"'&u#'o&e" ) "e !e"'&u)en u'%+%an!o +o" !e"'&u#'o&e". Ca!a o(e'o '%ene "u #op%a !e +o" a'&%(u'o" !e#+a&a!o" en +a #+a"eH pe&o 'o!o" #o4pa&'en +o" 4%"4o" 4'o!o".
Declarar lases! La" #+a"e" "e !e#+a&an !e +a "%gu%en'e 4ane&aM Clase IdentificadorClase 8.iene-de IdentificadorClase % IdentificadorClase : tri$"tos Identificadortri$"to % Identificadortri$"to Métodos sec"encia de mG declaraciones de métodos fclase IdentificadorMétodo 8 ( ListaFormalJarmetros ) : 8 --> : 8 a$stracto | so$reescri$ir | so$recar!ar | esttico | sincroniado : Constr"ctor 8 ( ListaFormalJarmetros ) : Destr"ctor ListaFormalJarmetros
--> 8 0 : Identificador % 8 0 :Identificador
l!straci"n .1. #inta$is de declaraci"n de Clase.
La !e#+a&a#%$n !e un a'&%(u'o en una #+a"e !e%ne un e+e4en'o !e !a'o -ue e8%"'e en #a!a %n"'an#%a u o(e'o !e +a #+a"e. Un 4'o!o e" una &u'%na -ue &ea+%a una ope&a#%$n "o(&e un o(e'o. Pa&'e !e +a ++a4a!a a un 4'o!o 4en"ae e"pe#%%#a e+ o(e'o "o(&e e+ -ue !e(e ope&a& e+ 4'o!o. La !e#+a&a#%$n !e un 4'o!o !en'&o !e una #+a"e %4p+%#a +a %4p+an'a#%$n po"'e&%o& !e+ 4'o!o 4e!%an'e una !e#+a&a#%$n !e !e%n%#%$n. Den'&o !e +a %4p+an'a#%$n !e un 4'o!oH e+ %!en'%%#a!o& E"'e &ep&e"en'a un pa&,4e'&o %4p+3#%'o -ue &ee&en#%a a+ o(e'o po& e+ #ua+ ue %n*o#a!o e+ 4'o!o. Lo" constructores ) destructores "on 4'o!o" e"pe#%a+e" -ue #on'&o+an +a #on"'&u##%$n ) !e"'&u##%$n !e +o" o(e'o". Un #on"'&u#'o& !e%ne +a" a##%one" a"o#%a!a" #on +a #&ea#%$n !e o(e'o". Cuan!o "e %n*o#a "'e &e'o&na una &ee&en#%a a una %n"'an#%a %n%#%a+%a!a !e una #+a"e. Un !e"'&u#'o& !e%ne +a" a##%one" a"o#%a!a" #on +a !e"'&u##%$n !e un o(e'o. Cuan!o "e %n*o#aH e+ !e"'&u#'o& +%(e&a +o" &e#u&"o" a"%gna!o" a+ o(e'o. Una #+a"e pue!e e&e!a& #o4ponen'e" !e o'&a #+a"e. S% C2 e&e!a !e C1H en'on#e" C2 e" un descendiente !e C1 ) C1 e" un ancestro !e C2. La e&en#%a e" '&an"%'%*a e" !e#%&H "% C9 e&e!a !e C2 ) C2 e&e!a !e C1H en'on#e" C9 'a4(%n e&e!a !e C1. E+ dominio !e una #+a"e e"', #ono&4a!o po& e++a ) 'o!o" "u" !e"#en!%en'e". Pag. 1@
Una #+a"e !e"#en!%en'e #on'%ene en o&4a %4p+3#%'a 'o!o" +o" #o4ponen'e" !e%n%!o" po& "u" #+a"e" an#e"'&o. Una #+a"e !e"#en!%en'e pue!e ag&ega& nue*o" #o4ponen'e" a +o" )a e&e!a!o". S%n e4(a&goH no pue!e e+%4%na& +a !e%n%#%$n !e un #o4ponen'e !e#+a&a!o en una #+a"e an#e"'&o. #eleccionar atrib!tos
La 4ane&a #o4o po!e4o" a##e"a& a +o" a'&%(u'o" !e una #+a"e e" "%4%+a& a +o an'e&%o&4en'e *%"'o #on +a" *a&%a(+e"H e8#ep'o -ue ne#e"%'a4o" e"pe#%%#a& a -ue #+a"e pe&'ene#e e"'e a'&%(u'o. Identificador'de'Clase,Identificador'tri$"to
E"'a e&&a4%en'a !e+ +enguae !e p"eu!o#$!%go no" e" /'%+ pa&a a##e"a& a +o" a'&%(u'o" !e una #+a"e !en'&o !e +a !e%n%#%$n !e un 4'o!o a4%go !e "'a. L+a4a4o" 4'o!o a4%go a+ 4'o!o -ue &e#%(e #o4o pa&'e !e "u %n'e&a un %!en'%%#a!o& !e o'&a #+a"e !e+ #ua+ "e pue!e a##e"a& !%&e#'a4en'e a +o" *a+o&e" !e +o" a'&%(u'o" !e +a #+a"e. E+ #on#ep'o !e amigo "e en'%en!e #o4o un g&a!o !e #on%ana en'&e #+a"e"H pue" una #+a"e #on3a "u %n'%4%!a! "e "upone -ue +o" a'&%(u'o" !e(en en#ap"u+a&"e pa&a e+ e8'e&%o& a o'&a e"pe&an!o -ue +a &e#ep'o&a no !e un u"o %n!e(%!o a +o" *a+o&e" !e "u" a'&%(u'o". Den'&o !e +o" 4'o!o" !e una #+a"eH e+ a##e"o a "u" a'&%(u'o" p&op%o" ) e&e!a!o" no ne#e"%'a +a e"pe#%%#a#%$n !e+ %!en'%%#a!o& !e #+a"eH pue" +a pe&'enen#%a e"', "o(&een'en!%!a.
Declaración de Instancias de lases "Objetos# La" instancias !e una #+a"e "e #ono#en #o4o +o" objetos !e +a #+a"e. Po& 4e!%o !e +a" #+a"e" !e%n%4o" en nue"'&o p"eu!o#$!%go +a e"'&u#'u&a ) e+ #o4po&'a4%en'o !e +o" o(e'o" -ue pe&'ene#an a e"a #+a"eH e" !e#%& +o" ee4p+a&e" !e +a #+a"e. Pa&a po!e& !e%n%& o(e'o" en o&4a #+a&a ne#e"%'a4o" e"'a(+e#e& un %!en'%%#a!o& pa&a e+ o(e'o ) e"pe#%%#a& !e -u #+a"e e" ee4p+a&. 9$Beto Identificador9$Beto eBemplar'de IdentificadorClase l!straci"n .1-. #inta$is de declaraci"n de Ob8eto.
a) -ue 'o4a& en #uen'a -ue #on e"'a e&&a4%en'a !e+ +enguae !e p"eu!o#$!%go e"'a4o" !e#+a&an!o an'e e+ en'o&no -ue e+ u"o !e I!en'o(e'o !eno'a e+ u"o !e un o(e'o !e +a #+a"e I!en'C+a"eH pe&o a/n no e4o" a"%gna!o &e#u&"o" n% %n%#%a+%a!o +o" *a+o&e" pa&a +o" a'&%(u'o" p&op%o" !e "u #+a"e. Pa&a e"'o #on'a4o" #on +o" constructores H !e +o" #ua+e" #on'%nua&e4o" a(+an!o 4," a!e+an'e.
Declaración de de$inición de %&todos E"'a pa&'e e"pe#%%#a cómo "e %4p+an'a e+ p&op$"%'o pa&a e+ #ua+ ue #&ea!o e+ 4'o!o. Su e"'&u#'u&a e" "%4%+a& a una &u'%na. A-u3 u'%+%a4o" +a pa+a(&a 5'o!o "egu%!a !e+ %!en'%%#a!o& ) +a %n'e&a "% e8%"'%e&a. E+ pun'o . no" %n!%#a una "e+e##%$n !e +a C+a"e #o4o en'%!a! g+o(a+ ) #+a&%%#a +a pe&'enen#%a !e+ 4'o!o a !%#a C+a"e. Método IdentificadorClase,IdentificadorMétodo 8 ( ListaFormalJarmetros ) : 8 --> : sec"encia de nG acciones fmétodo l!straci"n .5. #inta$is de declaraci"n de definici"n de 6%todo.
Pag. 11
Pa&a +o" #on"'&u#'o&e" ) !e"'&u#'o&e"H +a !e#+a&a#%$n e" "%4%+a& a +a !e +o" 4'o!o"H e8#ep'o -ue +a pa+a(&a Constr!ctor o /estr!ctor "e u'%+%a #o4o %!en'%%#a!o& !e+ 4'o!o. Den'&o !e un (+o-ue !e 4'o!oH +a pa+a(&a &e"e&*a!a 9eredado "e pue!e u'%+%a& pa&a a##e!e& a %!en'%%#a!o&e" !e 4'o!o" "o(&ee"#&%'o" o e8'en!%!o". Po& ee4p+oH en +a %4p+an'a#%$n !e+ 4'o!o CE'%-ue'aCon5ao.D%(ua&H po!e4o" u'%+%a& e&e!a!o pa&a %n*o#a& +a %4p+an'a#%$n e&e!a!a !e+ 4'o!o D%(ua&. Cuan!o un %!en'%%#a!o& e"', p&e#e!%!o po& e&e!a!oH +a (/"-ue!a "e %n%#%a #on e+ an#e"'&o %n4e!%a'o !e +a #+a"e -ue #on'%ene e+ 4'o!o. Vea4o"M
Clase CEtiN"etaConMarco .iene-de CEtiN"eta Métodos Di$"Bar fclase Método CEtiN"etaConMarco,Di$"Bar Keredado Di$"Bar Color =-- cl4exto#entana Estilo =-- st+ólido fmétodo
Pará&etros 3nterfa:4
La !e#+a&a#%$n !e un 4'o!o e"pe#%%#a una lista formal de parámetros o interfaz . Ca!a pa&,4e'&o -ue "e !e#+a&a en una +%"'a o&4a+ !e pa&,4e'&o" e" +o#a+ a+ 4'o!o en -ue "e !e#+a&a ) "e +e pue!e a#e& &ee&en#%a u'%+%an!o "u %!en'%%#a!o& en e+ (+o-ue a"o#%a!o #on e+ 4'o!o. ListaFormalJarmetros 8 0 :Identificador
--> 8 0 : Identificador %
l!straci"n .51. #inta$is de Lista for&al de Pará&etros .
A n%*e+ !e p"eu!o#$!%goH po!e4o" !%"'%ngu%& !o" '%po" !e pa&,4e'&o"H po& *a+o& ) po& &ee&en#%a. Lo" pa&,4e'&o" po& *a+o& "$+o &e-u%e&en e+ %!en'%%#a!o& !e+ pa&,4e'&oH 4%en'&a" -ue +o" pa&,4e'&o" po& &ee&en#%a ne#e"%'an "e& p&e#e!%!o" !e+ ope&a!o& K. Un pa&,4e'&o o&4a+ po& *a+o& a#'/a #o4o una *a&%a(+e +o#a+ a +a &u'%naH "$+o -ue o('%ene "u *a+o& %n%#%a+ !e "u #o&&e"pon!%en'e pa&,4e'&o &ea+ a+ 4o4en'o !e %n*o#a&"e a+ 4'o!o. Lo" #a4(%o" -ue "e &ea+%#en a+ pa&,4e'&o o&4a+ po& *a+o& no ae#'an e+ *a+o& !e+ pa&,4e'&o &ea+. E+ #o&&e"pon!%en'e pa&,4e'&o &ea+ !e un pa&,4e'&o o&4a+ po& *a+o& en una "en'en#%a !e 4'o!o !e(e "e& una e8p&e"%$n ) "u '%po !e *a+o& !e(e #on#o&!a& #on e+ !e'e&4%na!o po& e+ #on'e8'o !e u'%+%a#%$n !e+ pa&,4e'&o. Un pa&,4e'&o o&4a+ po& &ee&en#%a "e u'%+%a #uan!o "e !e(e pa"a& un *a+o& !e"!e e+ 4'o!o a -u%n +o %n*o#$. E+ pa&,4e'&o o&4a+ po& &ee&en#%a &ep&e"en'a +a *a&%a(+e &ea+ !u&an'e +a %n*o#a#%$n a+ 4'o!oH po& +o -ue #ua+-u%e& #a4(%o a+ *a+o& !e+ pa&,4e'&o o&4a+ po& &ee&en#%a "e &e+ean en e+ pa&,4e'&o &ea+. Den'&o !e+ 4'o!oH #ua+-u%e& &ee&en#%a a+ pa&,4e'&o o&4a+ po& &ee&en#%a a##e"a a+ pa&,4e'&o &ea+ 4%"4o. E+ pa&,4e'&o &ea+ !e(e #o%n#%!%& en '%po !e *a+o& #on e+ pa&,4e'&o o&4a+ po& &ee&en#%a. Ca(e &e#a+#a& -ue "% (%en en e+ +enguae !e p"eu!o#$!%go no "e e"', #on"%!e&an!o en o&4a e8p+3#%'a +a e8%"'en#%a !e '%po" !e *a+o&e"H "'a -ue!a !e'e&4%na!a po& e+ #on'e8'o !e u'%+%a#%$n !e +a" *a&%a(+e"H a+ 4o4en'o !e a"%gna#%$n !e *a+o&e" ) ap+%#a#%$n !e ope&a!o&e".
Pag. 12
Constr!ctores ; destr!ctores
Co4o e4o" a!e+an'a!oH +o" #on"'&u#'o&e" ) !e"'&u#'o&e" "on 4'o!o" -ue #on'&o+an +a #on"'&u##%$n ) !e"'&u##%$n !e o(e'o" !e una #+a"e. E++o" "e e"pe#%%#an #o4o #o4ponen'e" !e +a #+a"e #o4o un 4'o!o e"',n!a&H e8#ep'o -ue +a pa+a(&a #on"'&u#'o& "e u'%+%a #o4o %!en'%%#a!o& !e+ 4'o!o. A+ %gua+ -ue +o" 4'o!o"H "'o" "e pue!en e&e!a&. Lo" #on"'&u#'o&e" "e u"an pa&a #&ea& e %n%#%a+%a& nue*o" o(e'o". Po& +o gene&a+H +a %n%#%a+%a#%$n "e (a"a en +o" *a+o&e" -ue "e pa"an #o4o pa&,4e'&o" a+ #on"'&u#'o&. No&4a+4en'e +a p&%4e&a a##%$n -ue &ea+%a un #on"'&u#'o& e" %n*o#a& a+ #on"'&u#'o& e&e!a!o !e "u pa!&e. Lo" !e"'&u#'o&e" "e u"an pa&a &e'%&a& !e+ en'o&no o(e'o". Cuan!o "e %n*o#a a un !e"'&u#'o&H "e ee#u'an +a" a##%one" !e%n%!a" po& e+ u"ua&%o pa&a e+ !e"'&u#'o& ) +uego "e +%(e&a +o" &e#u&"o" a"%gna!o" a+ o(e'o. Po& +o gene&a+ +a" a##%one" !e un !e"'&u#'o& "on !e"'&u%& #ua+-u%e& o(e'o #on'en%!o en + ) +%(e&a& #ua+-u%e& &e#u&"o "o+%#%'a!o po& e+ o(e'o. T3p%#a4en'e +a /+'%4a a##%$n -ue &ea+%a un !e"'&u#'o& e" ++a4a& a+ !e"'&u#'o& e&e!a!o pa&a !e"a#e&"e !e +o" a'&%(u'o" e&e!a!o" !e+ o(e'o. Clase CFi!"ra .iene-de C9$Beto tri$"tos Lar!o ncKo 9$Beto Lpi eBemplar-de Clpi 9$Beto rocKa eBemplar-de C$rocKa Métodos Constr"ctor(O"eLar!o O"encKo) Destr"ctor fClase Método CFi!"ra,Constr"ctor(O"eLar!o O"encKo) Keredado Constr"ctor ncKo =-- O"eLar!o Lar!o =-- O"encKo Lpi,Constr"ctor rocKa,Constr"ctor fmétodo Método CFi!"ra,Destr"ctor Lpi,Destr"ctor rocKa,Destr"ctor Keredado Destr"ctor fmétodo
cceso a los atrib!tos
Pa&a po!e& 4an'ene& +a %n'eg&%!a! !e +a %no&4a#%$n -ue 4anea nue"'&a "o+u#%$n +$g%#aH !e(e4o" !%"#%p+%na&no" en e+ a##e"o a +o" a'&%(u'o" !e%n%!o" en +a" #+a"e". Cono&4e u'%+%#e e+ eno-ue o&%en'a!o a o(e'o" pa&a &ea+%a& "u" a+go&%'4o"H #o%n#%!%&e4o" en -ue +a 4ane&a !e e*%'a& -ue e+ #+%en'e !e un o(e'o a##e!a !%&e#'a4en'e a +o" *a+o&e" !e +o" a'&%(u'o" p&op%o" !e "u #+a"eH e" ne#e"a&%o !e%n%& 4'o!o" e"pe#%a+e" #u)a un#%$n "ean o('ene& e+ *a+o& !e+ a'&%(u'o o a+'e&a& "'e *a+o&. A e"'o" 4'o!o" e"pe#%a+e" +o" !eno4%na4o" métodos de lectura ) métodos de escritura . Con'%nuan!o #on +a "ana po+3'%#a !e e"'a(+e#e& #on*en#%one"H a pa&'%& !e ao&a a#o&!a&e4o" -ue +o" %!en'%%#a!o&e" !e 4'o!o" !e +e#'u&aH e" !e#%& +o" -ue &e'o&nan e+ *a+o& !e un a'&%(u'oH e"'n #ono&4a!o" po& +a pa+a(&a Obtener "egu%!a !e+ no4(&e !e+ a'&%(u'o a"3 4%"4oH +o" 4'o!o" !e e"#&%'u&a "e !eno'a&,n po& +a pa+a(&a Colocar "egu%!a !e+ no4(&e !e+ a'&%(u'o ) 'en!&,n #o4o pa&,4e'&o po& +o 4eno" e+ *a+o& #on e+ -ue "e !e"ea a+'e&a& e+ a'&%(u'o. Clase CFi!"ra .iene-de C9$Beto tri$"tos Lar!o ncKo 9$Beto Lpi eBemplar-de Clpi
Pag. 19
9$Beto rocKa eBemplar-de C$rocKa Métodos Constr"ctor(O"eLar!o O"encKo) Destr"ctor 9$tenerLar!o --> 9$tenerncKo --> ColocarLar!o(7"e.oLar!o) ColocarncKo(7"e.oncKo) fClase
n2ío de 6ensa8es
Un 4'o!o "e a#'%*a 4e!%an'e e+ en*3o !e un 4en"ae a un o(e'o #on"%"'en'e !e un identificador de método "egu%!o po& una +%"'a &ea+ !e pa&,4e'&o". E"'e '%po !e ++a4a!a "e #ono#e #o4o invocar un método $ enviar un mensaje . Identificador9$Beto, Identificador9$Beto,IdentificadorMétodo 8( 8(ListaRealJarmetros) ListaRealJarmetros): l!straci"n .55. #inta$is de n2ío de 6ensa8e.
E+ %!en'%%#a!o& !e o(e'o e8p&e"a!o a&&%(a !e(e !eno'a& una &ee&en#%a a un o(e'o e8%"'en'e. La %n"'an#%a e"pe#%%#a!a a+ 4o4en'o !e+ en*3o !e+ 4en"ae "e #on*%e&'e en o&4a %4p+3#%'a en un pa&,4e'&o &ea+ pa&a e+ 4'o!o #o&&e"pon!e #on un pa&,4e'&o &ea+ ++a4a!o E"'eH -ue '%ene e+ #ono#%4%en'o !e +a #+a"e a +a -ue #o&&e"pon!e e+ 4'o!o -ue "e e"', %n*o#an!o. Cuan!o %n*o#a4o" a 4'o!o" !e una #+a"e !en'&o !e +a !e#+a&a#%$n !e !e%n%#%$n !e o'&o 4'o!o !e +a 4%"4a #+a"e "e o4%'e +a &ee&en#%a a+ o(e'oH -ue!an!o "$+o e+ %!en'%%#a!o& !e+ 4'o!o ) +a +%"'a &ea+ !e pa&,4e'&o". Pa&a e+ #a"o !e +o" 4'o!o" e"','%#o"H a-ue++o" 4'o!o" -ue "e %n*o#an !%&e#'a4en'e !e +a #+a"eH "e u'%+%a e+ no4(&e !e +a #+a"e "egu%!o !e+ %!en'%%#a!o& !e+ 4'o!o ) +a +%"'a &ea+ !e pa&,4e'&o". IdentificadorClase, IdentificadorClase,IdentificadorMétodo 8( 8(ListaRealJarmetros) ListaRealJarmetros):
E+ %!en'%%#a!o& !e #+a"e e"pe#%%#a!o !e(e a#e& &ee&en#%a a una #+a"e e8%"'en'e ) !e(e "epa&a&"e po& un pun'o !e+ %!en'%%#a!o& !e+ 4'o!o !e+ 4en"ae.
Declaración de propiedades La" p&op%e!a!e" "on una #a&a#'e&3"'%#a p&e"en'e en 4u#o" +enguae" !e p&og&a4a#%$n. Pa&a !e#+a&a& p&op%e!a!e" en oLoop "e u'%+%a +a "%gu%en'e "%n'a8%". Jropiedad IdentificadorJropiedad 8 o$tener Identificadortri$"to | IdentificadorMétodo : 8 colocar Identificadortri$"to | IdentificadorMétodo :
Po& ee4p+oM Clase CCliente tri$"tos 7om$res pellidos fecKaPltimaCompra Métodos 9$tener7om$res -> Colocar7om$res(p7om$res) 9$tenerpellidos -> Colocarpellidos(ppellidos) 9$tener7om$reCompleto -> Jropiedad 7om$reCompleto o$tener 9$tener7om$reCompleto Jropiedad PltimaCompra
Pag. 1:
fclase
o$tener fecKaPltimaCompra colocar fecKaPltimaCompra
'ibliotecas de clases La" #+a"e" en una ap+%#a#%$n pue!en o&gan%a&"e en (%(+%o'e#a". oLoop pe&4%'e +a e"pe#%%#a#%$n ) u"o !e (%(+%o'e#a" !e #+a"e" en e+ p"eu!o#$!%go. specificaci"n de bibliotecas
Pa&a e"pe#%%#a& -ue una #+a"e pe&'ene#e a un (%(+%o'e#a !e'e&4%na!aH (a"'a #on u'%+%a& +a "en'en#%a iblioteca . i$lioteca Identificadori$lioteca
E"'a "en'en#%a "e #o+o#a #o4o p&%4e&a +3nea !e +a !e#+a&a#%$n !e #+a"eH %n!%#an!o -ue +a #+a"e a !e#+a&a& e"'a&, o&4an!o pa&'e !e +a (%(+%o'e#a %n!%#a!a. Va&%a" #+a"e" pue!en pe&'ene#e& a +a 4%"4a (%(+%o'e#a. En +a no4en#+a'u&a !e %!en'%%#a!o&e" !e (%(+%o'e#aH pue!e u'%+%a&"e e+ "34(o+o !e pun'o pa&a !e+%4%'a& +o" n%*e+e" !e o&gan%a#%$n en e+ no4(&e !e +a (%(+%o'e#a. Po& ee4p+oM i$lioteca com,empresa,aplicacioncompras,entidadesne!ocio …
Clase CCompra .iene-de CEntidad7e!ocio Q fclase
so de bibliotecas
Pa&a %n!%#a& -ue una #+a"e pue!e a#e& u"o !e +a" #+a"e" p/(+%#a" en una (%(+%o'e#aH "e u'%+%a +a "en'en#%a" sar . sar Identificadori$lioteca
La "en'en#%a sar "e ap+%#a pa&a #a!a (%(+%o'e#a #u)a" #+a"e" e %n'e&a#e" *a)a a u'%+%a& +a #+a"e a !e#+a&a&. Po& ee4p+oM i$lioteca com,empresa,aplicacioncompras,cliente sar com,empresa,aplicacioncompras,entidadesne!ocio sar com,empresa,"tilidades Clase CComprasplicacion .iene-de Cplicacion Q fclase
Polimor$ismo Una !e +a" #a&a#'e&3"'%#a" %4po&'an'e" !e+ pa&a!%g4a o&%en'a!o a o(e'o" e" e+ po+%4o&%"4o. E+ 4%"4o no4(&e no" !a una %!ea #+a&a !e+ #on#ep'o !e po+%4o&%"4oH pue" poli "%gn%%#a múltiple ) &orfis&o *%ene !e formasH e"'o %4p+%#a -ue un 4%"4o o(e'o pue!e 'o4a& !%*e&"a" o&4a". En oLoopH e+ po+%4o&%"4o "e #on'e4p+a en +a %n"'an#%a !e o(e'o" ) en +a #on"u+'a !e '%po".
Pag. 1;
Du&an'e +a #&ea#%$n !e %n"'an#%a !e #+a"e"H pue!e ap+%#a&"e e+ po+%4o&%"4oH !e#+a&an!o una #+a"e #o4o ee4p+a& !e una #+a"e gen&%#aH e %n*o#an!o a+ #on"'&u#'o& !e una #+a"e %a 4," e"pe#3%#a a+ 4o4en'o !e #&ea& +a %n"'an#%a. En +a "%gu%en'e "e##%$n !a&e4o" un ee4p+o !e e"'e '%po !e %n"'an#%a. Cons!lta de tipo
oLoop %4p+e4en'a +a #on"u+'a !e '%po !e un o(e'o po& 4e!%o !e +a pa+a(&a &e"e&*a!a e"%n"'an#%a!e. Identificador9$Beto es-instancia-de IdentificadorClase
La #o4(%na#%$n !e e"'o" e+e4en'o" #on"'%'u)e una e8p&e"%$n (oo+eana -ue pue!e "e& *e&!a!e&a o a+"a. Po& +o gene&a+ "e u'%+%a en #o4(%na#%$n #on +a "en'en#%a S%..en'on#e". En e+ "%gu%en'e ee4p+oH "e a"u4e +a e8%"'en#%a !e '&e" #+a"e"H una #+a"e gen&%#a CE4p+ea!o ) !o" #+a"e" !e"#en!%en'e" !eno4%na!a" CE4p+ea!oT%e4poPa%a+ ) CE4p+ea!oT%e4poCo4p+e'o. La *a&%a(+e E4p+ea!o "e !e#+a&a #o4o ee4p+a& !e +a #+a"e CE4p+ea!oH pe&o a+ 4o4en'o !e #&ea& +a %n"'an#%aH "e u'%+%a e+ 4'o!o #on"'&u#'o& !e +a #+a"e CE4p+ea!oT%e4poCo4p+e'o. Po"'e&%o&4en'eH "e #on"u+'a en una "en'en#%a Si pa&a "a(e& "% e+ o(e'o e" una %n"'an#%a !e+ '%po CE4p+ea!oT%e4poCo4p+e'o. 9$Beto Empleado eBemplar-de CEmpleado Q Empleado CEmpleado4iempoCompleto,constr"ctor(cod salario) Q +i(Empleado es-instancia-de CEmpleado4iempoCompleto) entonces Q fsi Q
Casting de tipo
E+ '&4%no casting p&o*%ene !e +a pa+a(&a cast -ue "%gn%%#a en e"pa0o+ moldeH po& +o -ue una '&a!u##%$n +%'e&a+ no" ++e*a&3a a a+go #o4o hacer un molde. oLoop %4p+e4en'a en "u "%n'a8%" +a e"pe#%%#a#%$n !e #a"'%ng !e un o(e'oH an'epon%en!o a+ %!en'%%#a!o& !e o(e'o e+ no4(&e !e +a #+a"e #u)a o&4a "e !e"ea -ue a"u4aH en#e&&a!a en'&e pa&n'e"%". (IdentificadorClase) Identificador9$Beto
E"'o pue!e "e& !e u'%+%!a! en +a" ope&a#%one" !e a"%gna#%$n. En #a"o "e !e"ee %n*o#a& a un 4'o!o -ue pe&'ene#e a +a #+a"e o(e'o !e+ #a"'%ngH "e en#%e&&a +a e8p&e"%$n !e #a"'%ng en'&e pa&n'e"%" ) "e %n*o#a a+ 4'o!o !e"ea!o. ((IdentificadorClase) Identificador9$Beto),IdentificadorMétodo
Con'%nuan!o #on e+ ee4p+o e8pue"'o +3nea" a&&%(aH "e en*3a un 4en"ae a+ o(e'o E4p+ea!o pa&a -ue %n*o-ue a+ 4'o!o o('ene&Sa+a&%oH 4'o!o a##e"o& -ue pe&'ene#e a +a #+a"e CE4p+ea!oT%e4poCo4p+e'o ) no a +a #+a"e CE4p+ea!o. Q salario ((CEmpleado4iempoCompleto)Empleado),o$tener+alario Q
Pag. 1<
Co!entarios Lo" #o4en'a&%o" "on #on"'&u##%one" -ue no o&4an pa&'e !e +a !e"#&%p#%$n !e +a +$g%#aH pe&o "on *a+%o"o" e+e4en'o" pa&a e8p+%#a& ) a#e& 4," #+a&o nue"'&o a+go&%'4o. Pa&a %n"e&'a& un #o4en'a&%oH (a"'a #on e"#&%(%& !o" "34(o+o" !e !%*%"%$n "egu%!o" == ) a #on'%nua#%$n e+ 'e8'o -ue "e !e"ee #o+o#a&. Se #on"%!e&a #o4en'a&%o a"'a e+ %na+ !e +a +3nea. 66 Este es "n eBemplo de "n comentario 66 N"e oc"pa .arias l&neas,
Pag. 1>
"erar#u$a de Clases predefinidas La 4a)o&3a !e e&&a4%en'a" !e +a a#'ua+%!a! no" p&opo%onan una e&a&-u3a !e #+a"e" p&e!e%n%!a" -ue po!e4o" 'o4a& #o4o pun'o !e pa&'%!a pa&a !e"a&&o++a& nue"'&a ap+%#a#%$n ) pa&a #&ea& nue"'&a" p&op%a" #+a"e". No"o'&o" no 'ene4o" -ue #on"u4%& '%e4po en #&ea& #+a"e" -ue #u4p+an e"'a" un#%one". Ba"'a #on #&ea& %n"'an#%a" !e "u" #+a"e". A#o&!e #on e"'oH nue"'&o +enguae !e p"eu!o#$!%go 'a4(%n pone a !%"po"%#%$n !e+ #&ea!o& !e ap+%#a#%one" un #onun'o !e #+a"e" -ue '%enen +o" a'&%(u'o" ) 4'o!o" (,"%#o" pa&a #on#e(%& nue"'&a "o+u#%$n. Se a '&a'a!o !e no %n#+u%& +o" a'&%(u'o" o 4'o!o" -ue e"',n e"'&e#a4en'e &e+a#%ona!o" #on +o" a"pe#'o" *%"ua+e" o 3"%#o"H !ean!o "$+o +o" -ue no" a)u!en a !e%n%& e+ #o4po&'a4%en'o !e nue"'&o a+go&%'4o. La #+a"e &a3 !e nue"'&a e&a&-u3a e" CO(e'oH +a #ua+ e" una #+a"e #o4p+e'a4en'e a("'&a#'a ) -ue "$+o "%&*e !e pun'o !e pa&'%!a !e+ ,&(o+. La #+a"e -ue !e"#%en!e "'a e" CCo4ponen'eH !e +a #ua+ !e"#%en!en 'o!a" +a" !e4," #+a"e" !e nue"'&a e&a&-u3a. E" #on e++a -ue #o4ena4o" nue"'&a !e"#&%p#%$n.
Pag. 1?
La clases Co!ponentes (tributos comunes "omponente# La +%"'a !e a'&%(u'o" *a&3a en'&e #o4ponen'e"H pe&o a+guno" "on #o4une" a 'o!o"M trib!to
?!nci"n
A#'%*a!o V%"%(+e
De'e&4%na "% e+ #o4ponen'e &ea##%ona&, an'e +a" a##%one" !e+ u"ua&%o. De'e&4%na "% e+ #o4ponen'e "e 4o"'&a&, "o(&e e+ o&4u+a&%o !u&an'e +a ee#u#%$n.
Tabla .5. trib!tos co&!nes para los co&ponentes en general.
Clase CComponente .iene-de C9$Beto tri$"tos cti.ado #isi$le Q Métodos Q 9$tenercti.ado --> 9$tener#isi$le --> Colocarcti.ado Colocar#isi$le fclase
E8%"'enH #o4o *e&e4o" 4," a!e+an'eH !o" #+a"e" -ue !e%nen !o" n%*e+e" !e p&oun!%!a! en +a e&a&-u3aH CCon'&o+ ) "u %oH CCon'&o+%n!o". La" #+a"e" -ue !e"#&%(%&e4o" a #on'%nua#%$n "on !e"#en!%en'e" !%&e#'a" !e CCon'&o+%n!o".
Visuali)ar * editar texto Po"%(+e4en'e +a 'a&ea 4," #o4/n en un p&og&a4a e" 4o"'&a& ) e!%'a& 'e8'o. La" #apa#%!a!e" !e 'e8'o "e u'%+%an pa&a o('ene& %no&4a#%$n !e+ u"ua&%o ) &e'o&na& &e"u+'a!o" a+ 4%"4o. Pa&a a#%+%'a&no" e"'a +a(o&H #on'a4o" #on '&e" #o4ponen'e" (,"%#o" pa&a 4anea& 'e8'oM E'%-ue'a"H Caa" !e E!%#%$n ) Caa" !e 5e4o. l co&ponente ti@!eta 3Cti@!eta4
In1o&4a#%$n !e+ En'o&no
l!straci"n .5'. 8e&plo de ti@!eta.
E+ #o4ponen'e e'%-ue'a no" pe&4%'e 4o"'&a& 'e8'oH pe&o no pe&4%'e a+ u"ua&%o %ng&e"a& %no&4a#%$n. E+ 'e8'o -ue 4ue"'&a e"'e #o4ponen'e e"', #on'en%!o en e+ a'&%(u'o Ttulo !e+ #o4ponen'e. trib!to
?!nci"n
T3'u+o
Con'%ene e+ 'e8'o -ue 4ue"'&a +a E'%-ue'a Tabla .'. trib!tos de Cti@!eta.
Clase CCEtiN"eta .iene-de CControlSindoTs tri$"tos
Pag. 1
4&t"lo Q Métodos Q 9$tener4&t"lo --> Colocar4&t"lo fclase
l co&ponente Ca8a de dici"n 3Cdici"n4
No4(&e
l!straci"n .5(. 8e&plo de Ca8a de edici"n.
Un #o4ponen'e &e+a#%ona!o #on +a E'%-ue'a e" +a #aa !e E!%#%$n. E"'e #o4ponen'e +e pe&4%'e *%"ua+%a& %no&4a#%$nH pe&o a "u *e pe&4%'e a+ u"ua&%o %ng&e"a& %no&4a#%$n -ue pue!e "e& u'%+%a!a po& nue"'&o p&og&a4a. E+ 'e8'o !e +a Caa !e E!%#%$n e"', #on'en%!o en e+ a'&%(u'o Te!to !e+ #o4ponen'e. Co4o e" !e "upone&"eH e+ 'e8'o "e %ng&e"a !%g%'an!oH pe&o a 4ane&a !e #o4en'a&%oH ag&ego -ue +a Caa !e E!%#%$n "opo&'a +a" ope&a#%one" e"',n!a&e" !e #o&'a&H #op%a& ) pega&. Aun-ue a+ 4o4en'o !e +a #on#ep#%$n !e+ a+go&%'4oH "upone4o" +a e8%"'en#%a !e &e#u&"o" %+%4%'a!o"H !e(e4o" 'o4a& en #uen'a -ue +a 4a)o&3a !e e&&a4%en'a" pe&4%'en -ue "e %ng&e"e 'e8'o" !e a"'a 2;; #a&a#'e&e". Lo" a'&%(u'o" #+a*e pa&a un #o4ponen'e !e e"'e '%po "on +o" "%gu%en'e"M trib!to
?!nci"n
Te8'o
Con'%ene e+ 'e8'o -ue *%"ua+%a +a #aa !e E!%#%$n o -ue %ng&e"a e+ u"ua&%o. In!%#a "% e+ 'e8'o a "%!o 4o!%%#a!o po& e+ u"ua&%o. E"'a p&op%e!a! pue!e *e&%%#a&"e pa&a *e& "% "e ne#e"%'a a+g/n p&o#e"a4%en'o pa&a e+ 'e8'o. S% e"', en Ve&!a!e&oH p&o%(e a+ u"ua&%o +a e!%#%$n !e+ 'e8'o.
5o!%%#a!o So+oLe#'u&a
Tabla .(. trib!tos de Cdici"n.
Clase CCEdición .iene-de CControlSindoTs tri$"tos 4exto Modificado +óloLect"ra Q Métodos Q 9$tener4exto --> Colocar4exto 9$tenerModificado --> ColocarModificado 9$tener+óloLect"ra --> Colocar+óloLect"ra fclase
Permitir +ue el usuario ,aga elecciones simples Tan /'%+ #o4o +a #apa#%!a! !e %ng&e"a& 'e8'oH a 4enu!o !e"ea4o" &e"'&%ng%& +o -ue e+ u"ua&%o %ng&e"e a una" #uan'a" a+'e&na'%*a". Po& ee4p+oH "% !e"ea4o" o('ene& e+ e"'a!o #%*%+ !e una pe&"onaH po!&3a4o" #o+o#a& una E'%-ue'a #o4o As !sted casado3a4B ) u'%+%a& una Caa !e E!%#%$n pa&a o('ene& +a &e"pue"'a. S%n e4(a&goH no "a(e4o" #$4o no" pue!e &e"pon!e& e+ u"ua&%o. Pue!e %ng&e"a& S3 o NoH o pue!e "$+o
Pag. 2@
%ng&e"a& S o N. Y #o4o u"'e! ) )o "a(e4o"H "%e4p&e e8%"'e +a po"%(%+%!a! !e un %ng&e"o e&&$neo. La" e&&a4%en'a" !e +a a#'ua+%!a! no" p&opo%onan #o4ponen'e" e"',n!a&e" pa&a 4anea& +a" a+'e&na'%*a" "%4p+e". La p&%4e&a e" +a Ca"%++a !e Ve&%%#a#%$n -ue "e u'%+%a pa&a p&opo%ona& a+ u"ua&%o e+e##%one" !e+ '%po S3 o No. E+ o'&o #o4ponen'e e" e+ Bo'$n !e Ra!%oH -ue "e u'%+%a pa&a (&%n!a& a + u"ua&%o un #onun'o 4u) +%4%'a!o !e a+'e&na'%*a". La Casilla de erificaci"n 3Ccasilla4
Ve&%1%#a& o&'og&a13a A#'%*a& gu%one" Au'o#o&&e##%$n
l!straci"n .5). 8e&plo de Casilla de 2erificaci"n.
La Ca"%++a !e *e&%%#a#%$n e" 4u) ,#%+ !e #on%gu&a&. S$+o !e(e a"%gna&"e *a+o& a+ a'&%(u'o T3'u+o pa&a *%"ua+%a& +o -ue "e !e"ee -ue apa&e#a un'o a +a #a"%++a. E+ T3'u+o !e(e "e& una o&a#%$n o p&opo"%#%$n -ue '%ene una &e"pue"'a o(*%a !e S3 o No. Cuan!o e+ u"ua&%o en#uen'&a una Ca"%++a !e Ve&%%#a#%$nH una 4aa !e *e&%%#a#%$n %n!%#a una &e"pue"'a !e S3 o Ve&!a!e&o. S% no a) 4aa a+gunaH +a &e"pue"'a "e&, No o Fa+"o. E+ u"ua&%o pue!e #a4(%a& e+ e"'a!o !e +a Ca"%++a !e Ve&%%#a#%$n a#%en!o #+%# "o(&e +a Ca"%++a o p&e"%onan!o +a (a&&a e"pa#%a!o&a 4%en'&a" -ue e"'e #o4ponen'e '%ene e+ o#o. Pa&a !e'e&4%na& -u &e"pon!%$ e+ u"ua&%oH 'ene4o" -ue e8a4%na& e+ a'&%(u'o "erificada !e +a Ca"%++a. Un u"o 4u) &e#uen'e !e +a" Ca"%++a" !e Ve&%%#a#%$n e" pa&a e"'a(+e#e& +a" op#%one" !e un p&og&a4a. S% +a Ca"%++a e"', Ve&%%#a!aH +a op#%$n e"', a#'%*a. trib!to
?!nci"n
T3'u+o Ve&%%#a!a
De'e&4%na e+ 'e8'o -ue apa&e#e un'o a +a #a"%++a. De'e&4%na "% e+ u"ua&%o a#'%*$ +a #a"%++a !e *e&%%#a#%$n. Tabla .). trib!tos de CCasilla.
Clase CCasilla .iene-de CControlSindoTs tri$"tos 4&t"lo #erificada Q Métodos Q 9$tener4&t"lo --> Colocar4&t"lo 9$tener#erificada --> Colocar#erificada fclase
otones de Dadio 3Cbot"nDadio4
I4p&e"o&a +o#a+ I4p&e"o&a !e &e! Un A%*o en !%"#o...
l!straci"n .5*. 8e&plos de ot"n de radio.
Lo" Bo'one" !e Ra!%o "on o'&o 4e!%o pa&a p&e"en'a& a+ u"ua&%o un n/4e&o +%4%'a!o !e a+'e&na'%*a"H !on!e #a!a Bo'$n !e Ra!%o #o&&e"pon!e #on una po"%(%+%!a!. E+ '&4%no #otón de $adio '%ene "u o&%gen en +a %!ea !e +a" &a!%o" !e +o" #a&&o" -ue 'en3an *a&%o" (o'one" -ue "e p&e"%ona(an pa&a e+eg%& una e"'a#%$n. E+ (o'$n pe&4ane#3a un!%!o Pag. 21
+uego !e p&e"%ona&"e. Uno e+eg3a o'&a e"'a#%$n p&e"%onan!o un (o'$n ) e+ an'e&%o& "e +e*an'a(a. Lo" Bo'one" !e Ra!%o en un p&og&a4a un#%onan !e +a 4%"4a 4ane&a. S$+o uno !e +o" QBo'one" pue!e e"'a& p&e"%ona!o en un %n"'an'e !a!o. La e+e##%$n !e un Bo'$n a#e -ue 'o!o" +o" !e4," "e !e"e+e##%onen. En +a pan'a++a #a!a Bo'$n !e Ra!%o "e p&e"en'a #o4o un #3u+o. E+ Bo'$n "e+e##%ona!o '%ene un pun'o neg&o en e+ %n'e&%o&H 4%en'&a" -ue 'o!o" +o" !e4," e"',n *a#3o". trib!to
?!nci"n
T3'u+o Ve&%%#a!a
De'e&4%na e+ 'e8'o -ue apa&e#e un'o a+ Bo'$n !e Ra!%o. De'e&4%na "% e+ u"ua&%o e+%g%$ e"'a a+'e&na'%*a. Tabla .*. trib!tos de Cot"nDadio.
Con%gu&a& +o" Bo'one" !e Ra!%o e" 'an "%4p+e #o4 #on +a" Ca"%++a" !e Ve&%%#a#%$n. Ba"'a #on e"'a(+e#e& e+ a'&%(u'o T3'u+o pa&a -ue e+ u"ua&%o #ono#a +a a+'e&na'%*a &ep&e"en'a!a po& e+ Bo'$n. Du&an'e +a ee#u#%$n e8a4%na4o" e+ a'&%(u'o Ve&%%#a!a !e #a!a Bo'$n pa&a !e'e&4%na& #u,+ ue "e+e##%ona!a po& e+ u"ua&%o. Clase CotónRadio .iene-de CControlSindoTs tri$"tos 4&t"lo #erificada Q Métodos Q 9$tener4&t"lo --> Colocar4&t"lo 9$tener#erificada --> Colocar#erificada fclase
otones para presionar 3Cot"ncci"n4 S Ba#T
Ne8' U
OV
Can#e+
l!straci"n .5+. 8e&plos de ot"n de acci"n.
O'&o #o4ponen'e a4p+%a4en'e u'%+%a!o e" e+ #o4ponen'e Bo'$n !e A##%$n. E"'e #o4ponen'e p&opo%ona a+ u"ua&%o un 4e!%o pa&a %n%#%a& a+guna a##%$n en un p&og&a4aH #o4o g&a(a& un &eg%"'&o o &ea+%a& un #,+#u+o. E+ a'&%(u'o #+a*e pa&a e"'e #o4ponen'e e" T3'u+o ) e" un 'e8'o -ue +e !%#e a+ u"ua&%o -u a##%$n "e ++e*a&, a #a(o #uan!o p&e"%one e+ Bo'$n !e A##%$n. trib!to
?!nci"n
T3'u+o Can#e+a&
Con'%ene e+ 'e8'o -ue 4ue"'&a e+ Bo'$n !e A##%$n En Ve&!a!e&o "% "e !e"ea -ue -ue e+ Bo'$n &ea##%one #uan!o e+ u"ua&%o p&e"%one Esc . En Ve&!a!e&o "% -ue&e4o" -ue +a 'e#+a Enter aga -ue e+ Bo'$n &ea##%oneH a/n "% "'e no '%ene e+ o#o.
Po&Dee#'o
Tabla .+. trib!tos de Cot"ncci"n.
Clase Cotóncción .iene-de CControlSindoTs tri$"tos 4&t"lo Cancelar JorDefecto Q Métodos Q 9$tener4&t"lo --> Colocar4&t"lo 9$tenerCancelar --> ColocarCancelar
Pag. 22
fclase
9$tenerJorDefecto ColocarJorDefecto
ontroles especiali)ados Lo" "%gu%en'e" #on'&o+e" p&opo%onan a+'e&na'%*a" pa&a +a #ap'u&a !e !a'o". • La Ba&&a !e De"p+aa4%en'o "e u'%+%a pa&a "e+e##%ona& *a+o&e" en un &ango #on'%nuo. • La Ba&&a !e D%a+ e" /'%+ pa&a !a& un 4a)o& ee#'o !e (a&&a !e !e"p+aa4%en'o. • E+ A&&%(a A(ao a)u!a a #one#'a& un "p%nne& #on una #aa !e e!%#%$n. arras de /espla:a&iento 3Carra/esp4
l!straci"n .5. 8e&plo de arra de despla:a&iento.
E"'a e" +a (a&&a !e !e"p+aa4%en'o !e %n!o"H -ue "e u'%+%a pa&a !e"p+aa& e+ #on'en%!o !e una *en'ana o&4u+a&%o o #on'&o+. En +a 'a(+a po!e4o" ap&e#%a& "u" p&%n#%pa+e" a'&%(u'o". trib!to
?!nci"n
Va&%a#%$nG&an!e
De'e&4%na #uan'o "e 4ue*e #uan!o e+ u"ua&%o a#e #+%# "o(&e +a (a&&a a #ua+-u%e&a !e +o" +a!o". Va&%a#%$nPe-ue0a De'e&4%na #uan'o "e 4ue*e #uan!o e+ u"ua&%o a#e #+%# "o(&e +a" +e#a" a +o" e8'&e4o" !e +a (a&&a o u'%+%a +a" +e#a" !e !e"p+aa4%en'o en e+ 'e#+a!o. Su *a+o& po& !ee#'o e" 1. 53n=5,8 In!%#an #u,n'a" po"%#%one" e"',n !%"pon%(+e" en +a (a&&a !e !e"p+aa4%en'o. Po"%#%$n Ino&4an !e #u,n'o "e a !e"p+aa!o en +a (a&&a. Tabla .. trib!tos de Carra/esp.
Clase CarraDesp .iene-de CControlSindoTs tri$"tos #ariaciónUrande #ariaciónJeN"eVa M&n Mx Josición Q Métodos Q 9$tener#ariaciónUrande --> Colocar#ariaciónUrande 9$tener#ariaciónJeN"eVa --> Colocar#ariciónJeN"eVa 9$tenerM&n --> ColocarM&n 9$tenerMx --> ColocarMx 9$tenerJosición --> ColocarJosición fclase
arra de /ial 3Cdial4
Pag. 29
l!straci"n .5-. 8e&plo de arra de dial.
E"'e '%po !e (a&&a e" #on*en%en'e #uan!o "e !e"ea e"'a(+e#e& o au"'a& *a+o&e" nu4&%#o" "o(&e un &ango #on'%nuoH #o4o e+ *o+u4en o e+ (&%++o. D%#o #o4ponen'e #on"%"'e !e una (a&&a -ue !e%ne +a e8'en"%$n o &ango !e au"'e ) un %n!%#a!o& -ue 4ue"'&a e+ *a+o& a#'ua+ !e+ #on'&o+ ) p&opo%ona +o" 4e!%o" pa&a 4o!%%#a& e+ #on'&o+. E+ u"ua&%o 4ue*e e+ %n!%#a!o& a&&a"'&,n!o+o a una u(%#a#%$n en pa&'%#u+a& o a#%en!o #+%# "o(&e una ona e"pe#3%#a !e +a (a&&aH +o -ue 4ue*e e+ %n!%#a!o& !%&e#'a4en'e a e"a po"%#%$n. Su" propiedades son básicamente similares a los de la barra de desplazamiento . Control rriba ba8o 3Carribaba8o4
Long%'u!M
99.:@
l!straci"n .'. 8e&plo de Control rriba ba8o.
Lo" #on'&o+e" A&&%(aA(ao "on #aa" !e 'e8'o -ue a#ep'an un #onun'o +%4%'a!o ) o&!ena!o !e *a+o&e" !%"#&e'o" -ue *a&3an en o&4a #3#+%#a. Cuan!o e+ u"ua&%o a#e #+%# "o(&e +a #aa !e 'e8'o o +o" (o'one"H e+ o#o pa"a a +a #aa !e 'e8'o !e+ #on'&o+. E+ u"ua&%o pue!e e"#&%(%& un *a+o& !%&e#'a4en'e en +a #aa !e 'e8'o o u'%+%a& +o" (o'one" pa&a %n#&e4en'a& o !e#&e4en'a& e+ *a+o&. U%+%#e A"o#%a& pa&'a #one#'a& e+ #on'&o+ #on una #aa !e 'e8'o. U%+%#e 5,8 ) 53n pa&a e"'a(+e#e& +o" +34%'e" "o(&e +o" -ue pue!e +u#'ua& e+ *a+o& !e+ #on'&o+. E+ a'&%(u'o Po"%#%$n a+4a#ena e+ *a+o& #ono&4e e+ #on'&o+ *a %n#&e4en',n!o"e o !e#&e4en',n!o"e. E"'e a'&%(u'o "e e"'a(+e#e& #on un *a+o& po& !ee#'o. Po& !ee#'oH e"'e #on'&o+ "e !e'%ene en "u *a+o& 4,8%4o. S% !e"ea4o" -ue e+ #on'&o+ &eg&e"e a+ *a+o& 43n%4o #uan!o ++ega a+ 4,8%4oH #o+o-ue C%u+a& en Ve&!a!e&o.
%anejo de -istas E"'%+oM
No&4a+
l!straci"n .'1. 8e&plo de Lista desplegable.
La" +%"'a" "e u'%+%an pa&a p&e"en'a& a+ u"ua&%o #on una #o+e##%$n !e e+e4en'o" !e +o" -ue "e pue!e "e+e##%ona& uno o 4," !e e++o". A#o&!e #on +a" e&&a4%en'a" !e o)H !%"'%ngu%4o" *a&%a" #+a"e" p&e!e%n%!a". Una Caa !e L%"'a "e u'%+%a pa&a 4o"'&a& un +%"'a !e 'e8'o" !e +a" -ue "e pue!e "e+e##%ona& uno o 4,". La L%"'a Co4(%na!a 4ue"'&a un +%"'a -ue "e !e"p+%egaH ) e" /'%+ pa&a ao&&a& e"pa#%o. La" V%"'a en Á&(o+ 4ue"'&a +o" e+e4en'o" en o&4a e&,&-u%#a.
Pag. 2:
trib!tos co&!nes para los controles de Lista
Pa&a ag&ega& #o+u4na" a!%#%ona+e" a un #on'&o+ !e +%"'aH #on'a4o" #on e+ a'&%(u'o Co+u4na"H -ue a+4a#ena e+ n/4e&o !e #o+u4na" -ue "e !e"ee. La p&op%e!a! E+e4en'o" e" en &ea+%!a! un #onun'o !e #a!ena" 'e8'o -ue "e ++enan #on *a+o&e". E+ a'&%(u'o In!%#e !e E+e4en'o %n!%#a #u,+ !e +o" e+e4en'o" en +a +%"'a "e a "e+e##%ona!o. Se pue!e pe&4%'%& a +o" u"ua&%o" "e+e##%ona& 4," !e un e+e4en'o a +a *e e"'a(+e#%en!o +a p&op%e!a! 5u+'%e+e##%$n en *e&!a!e&o. Lo" u"ua&%o" pue!en en'on#e" u'%+%a& +a 'e#+a C'&+ pa&a "e+e##%ona& e+e4en'o" en po"%#%one" !%"#on'%nua"H o S%' pa&a "e+e##%ona& un &ango !e e+e4en'o". E+ a'&%(u'o O&!ena!a !e'e&4%na "% +a +%"'a "e o&!ena&, e+ o&!en a+a('%#o. Ca8as de Lista 3CCa8aLista4
Una #aa !e +%"'a 4ue"'&a una &e+a#%$n !e +a -ue +o" u"ua&%o" pue!en "e+e##%ona& uno o 4," e+e4en'o". La" #aa" !e +%"'a (a"an "u #o4po&'a4%en'o en +o" *a+o&e" !e +o" '&%(u'o" e"pe#%%#a!o" en +a "e##%$n an'e&%o&. Listas co&binadas 3CListaCo&binada4.
Una +%"'a #o4(%na!a e" un #on'&o+ -ue #o4(%na una #aa !e 'e8'o #on una +%"'a. Lo" u"ua&%o" pue!en !%g%'a& 'e8'o o "e+e##%ona& un e+e4en'o !e +a +%"'aH #on +o -ue e+ *a+o& !e Te8'o "e a#'ua+%a. Po& !ee#'o +a +%"'a !e"p+ega(+e 4ue"'&a ? e+e4en'o". Pa&a %n#&e4en'a& o !e#&e4en'a& !%#o *a+o& #o+$-ue+o en e+ a'&%(u'o Can'%!a!De"p+ega!a.
.ic,as ".ic,a# G&a(a&
Co4p%+a!o&
l!straci"n .'5. 8e&plo de ?ic0a.
E"'e #o4ponen'e e" un #onun'o !e p,g%na" -ue "e u'%+%a pa&a #&ea& !%,+ogo" !e *a&%a" p,g%na". En +a "%gu%en'e 'a(+a "e 4ue"'&an "u" p&op%e!a!e". trib!to
?!nci"n
P,g%naA#'%*a
E"pe#%%#a #u,+ e" +a %#a "e+e##%ona!a en e"e 4o4en'o. E" Ve&!a!e&o "% a) *a&%a" +3nea" !e %#a". E"pe#%%#a e+ n/4e&o !e p,g%na". No" pe&4%'e a##e"o a +a" %#a".
5u+'%+3nea N/4e&oDeP,g%na" P,g%na"
Tabla .-. trib!tos de Cfic0a.
Pag. 2;
-a clase .ormulario ?or&!lario en =lanco
l!straci"n .''. 8e&plo de !n ?or&!lario en blanco.
La #+a"e #o4ponen'e CFo&4u+a&%o e" po& +o gene&a+ e+ #en'&o !e 'o!a ap+%#a#%$n. So(&e un o&4u+a&%o #o+o#a4o" o'&o" e+e4en'o"H ) +o" po!e4o" u'%+%a& #o4o "%4p+e" o&4u+a&%o"H *en'ana"H #aa" !e !%,+ogo o o&4u+a&%o" !e en'&a!a !e !a'o". Pa&a 4o"'&a& un o&4u+a&%o -ue no e"', a#'%*o en e"'e 4o4en'o en nue"'&a ap+%#a#%$nH u'%+%a4o" +o" 4'o!o" Mostrar ) MostrarModal e+ '&4%no modal %n!%#a -ue no "e pue!e "e+e##%ona& o'&a" ,&ea" !e +a ap+%#a#%$n 4%en'&a" e"', a#'%*o e+ o&4u+a&%o. E+ a'&%(u'o %ontrol&ctivo e" una apun'a!o& -ue '%ene +a !%&e##%$n !e+ #on'&o+ a#'%*o "o(&e e+ o&4u+a&%o. Pue!e u'%+%a& e+ 4'o!o !e '&a'a4%en'o !e e*en'o &l%rear pa&a e"'a(+e#e& *a+o&e" %n%#%a+e" pa&a +o" a'&%(u'o" ) a#e& #ua+-u%e& p&o#e"o -ue "e !e"ee o#u&&a an'e" -ue e+ u"ua&%o #o4%en#e a %n'e&a#'ua& #on e+ o&4u+a&%o. A!e4," !e e"'o" a'&%(u'o" ) 4'o!o"H e"'a #+a"e '%ene 'o!o" +o" a'&%(u'o" ) 4'o!o" !e +o" #on'&o+e" !e %n!o" pue" e" un !e"#en!%en'e !e +a #+a"e C#on'&o+ %n!o". Clase CForm"lario .iene-de CControlSindoTs tri$"tos p"ntador Controlcti.o Res"ltadoModal Métodos Constr"ctor lCrear Mostrar MostrarModal Destr"ctor fclase
-a clase (plicación To!o a+go&%'4o -ue &ep&e"en'a una ap+%#a#%$n u'%+%a una #+a"e -ue !e"#%en!e !e %&plicación . Cuan!o ee#u'a "u ap+%#a#%$nH "e %n*o#a a+ 4'o!o 'rincipal . E+ 4'o!o Terminar %na+%a +a ee#u#%$n !e +a ap+%#a#%$n. E+ a'&%(u'o (ormulario'rincipal e" una apun'a!o& -ue !e(e 'ene& e+ *a+o& !e +a !%&e##%$n !e+ o&4u+a&%o -ue apa&e#e #o4o (a"e !e +a ap+%#a#%$n. Da!o -ue +o" en'o&no" a#'ua+e" e8%"'e +a p&op%e!a! !e 4%n%4%a& ) &e"'au&a& +a ap+%#a#%$nH e4o" %n#+u%!o e"'o" 4'o!o" pa&a -ue pue!an %n*o#a&"e po& p&og&a4a#%$n. A"3 4%"4o +o" pue!e e8'en!e& pa&a -ue &ea+%#e o'&a" a##%one" apa&'e. Pag. 2<
Po!e4o" e"pe#%%#a& #$4o "e 4anea&,n +a" e8#ep#%one" u'%+%an!o +o" 4'o!o" ManejarE!cepción H &l)currirE!cepción ) MostrarE!cepción . %&plicación '%ene *a&%o" 4'o!o" !e '&a'a4%en'o !e e*en'o" -ue pe&4%'en e"pe#%%#a&
#$4o +a ap+%#a#%$n p&o#e"a +a o#u&&en#%a !e e*en'o" e"pe#%a+e". Pa&a e"pe#%%#a& -u o#u&&e #uan!o +a ap+%#a#%$n "e a#'%*a o %na#'%*a u'%+%a4o" +o" 4'o!o" &l&ctivar ) &l*esactivar . Cuan!o +a ap+%#a#%$n en'&a en e"'a!o !e e"pe&a #ono#%!o #o4o idle po!e4o" e"pe#%%#a& -ue o#u&&a a+go po& 4e!%o !e+ 4'o!o &lEsperar . A!e4," !e e"'o" a'&%(u'o" ) 4'o!o"H e+ #o4ponen'e CAp+%#a#%$n '%ene 'a4(%n +o" a'&%(u'o" ) 4'o!o" -ue "e ap+%#an a 'o!o" +o" #o4ponen'e"H pue" e" un !e"#en!%en'e !%&e#'o !e CCo4ponen'e. Ee4p+o. Clase Cplicación .iene-de CComponente tri$"tos rre!lo aEntorno nEntorno p"ntador Form"larioJrincipal 4&t"lo Métodos Constr"ctor(aEntorno nEntorno) Jrincipal 4erminar Minimiar Resta"rar ManeBarExcepción l9c"rrirExcepción MostrarExcepción lEsperar lcti.ar lDesacti.ar Destr"ctor fclase
O("e&*e -ue e+ 4'o!o #on"'&u#'o& '%ene !o" pa&,4e'&o"M aEn'o&no ) nEn'o&no. E"'o" "on &e"pe#'%*a4en'e un a&&eg+o !e #a!ena" !e 'e8'o ) un n/4e&o &e"pe#'%*a4en'e. Con'%enen +o" pa&,4e'&o" -ue no" en*3a e+ en'o&no !e+ "%"'e4a ) e+ n/4e&o !e pa&,4e'&o" -ue e"'a4o" &e#%(%en!o. E+ "%gu%en'e ee4p+o e" un u"o 4u) "en#%++o !e e"'a #+a"e. E+ o(e'%*o !e e"'a ap+%#a#%$n e" 4o"'&a& un 4en"ae en +a pan'a++a. Clase CMiplicación .iene-de Cplicación Métodos Constr"ctor(aEntorno nEntorno) Jrincipal fclase Método Constr"ctor(aEntorno nEntorno) de CMiplicación Weredado Constr"ctor(aEntorno nEntorno) 4&t"lo =-- plicación de EBemplo* Form"larioJrincipal =-- 7"lo fmétodo Método Jrincipal de CMiplicación Keredado Jrincipal MostrarMensaBe(Jerteneco a la clase CMiplicación*) fmétodo
O("e&*e -ue no"o'&o" e"'a4o" #&ean!o un !e"#en!%en'e !e +a #+a"e CAp+%#a#%$nH pe&o en n%ng/n 4o4en'o e"'a4o" #&ean!o una %n"'an#%a !e C5%Ap+%#a#%$n. E"'o" e" !e(%!o a -ue e"'a4o" u'%+%an!o e+ #on#ep'o !e -ue e+ "%"'e4a e" -u%en ee#u'a nue"'&a ap+%#a#%$nH ) po& 'an'o +a #&ea#%$n !e +a %n"'an#%a ) +a ++a4a!a a +o" 4'o!o" %onstructor Pag. 2>
) 'rincipal !epen!e !e+ "%"'e4aH no !e+ p&og&a4a!o&. En +a %4p+an'a#%$n no "%e4p&e o#u&&e +o 4%"4o. A+guna" e&&a4%en'a" #uen'an #on un p&og&a4a p&%n#%pa+ -ue ne#e"%'a -ue #&ee4o" +a %n"'an#%a !e +a ap+%#a#%$n ) ++a4e4o" a +o" 4'o!o" Con"'&u#'o& ) P&%n#%pa+ o "u" e-u%*a+en'e".
Pag. 2?
Trata!iento de E%entos Lo" e*en'o" "on pa&'e %4po&'an'e !e +a" #+a"e"H aun-ue e+ !e"a&&o++a!o& po& +o gene&a+ no ne#e"%'a 4a)o& e"ue&o #on e++o". Un e*en'o e" un en+a#e en'&e una o#u&&en#%a en e+ "%"'e4a #o4o una a##%$n !e+ u"ua&%o o un #a4(%o en e+ o#o a +a -ue una #+a"e po!&3a ne#e"%'a& &e"pon!e& ) una "e##%$n !e #$!%go -ue &e"pon!e a e"a o#u&&en#%a. E+ (+o-ue !e #$!%go !e &e"pue"'a e" e+ ge"'o& del eventoH ) 4a)o&4en'e +o e"#&%(e e+ #&ea!o& !e +a #+a"e. A+ u'%+%a& +o" e*en'o"H +o" !e"a&&o++a!o&e" !e ap+%#a#%one" pue!en pe&"ona+%a& e+ #o4po&'a4%en'o !e +a" #+a"e" "%n 'ene& -ue #a4(%a& +a" #+a"e" en "3. Co4o #&ea!o&e" !e #+a"e"H u'%+%a4o" +o" e*en'o" pa&a -ue +o" !e"a&&o++a!o&e" !e ap+%#a#%one" pe&"ona+%#en e+ #o4po&'a4%en'o !e nue"'&a" #+a"e". Lo" e*en'o" pa&a +a 4a)o&3a !e +a" a##%one" !e+ u"ua&%o #o4o po& ee4p+o +a" a##%one" !e+ &a'$n )a e"',n %n#o&po&a!a" en +a" #+a"e" p&e!e%n%!a" !e nue"'&o +enguaeH pe&o p&opo%ona4o" +o" 4e#an%"4o" pa&a !e%n%& nue*o" e*en'o" ) a"o#%a&+o" #on +a" #+a"e". En nue"'&o +enguae !e p"eu!o#$!%goH +a" #+a"e" p&e!e%n%!a" '%ene %n#o&po&a!o" 4'o!o" -ue &e"pon!en a #%e'&o" e*en'o" e"',n!a&e". Po& ee4p+o +a #+a"e CBo'$nA##%$n '%ene un 4'o!o &l%lic . La capa de administración de eventos e" e+ #onun'o !e 4e#an%"4o" -ue 'o!a e&&a4%en'a !e !e"a&&o++o o&%en'a!a a o(e'o" ) e*en'o" '%ene ) -ue !e(e4o" "upone& #o4o e8%"'en'e. E+ +enguae !e p"eu!o#$!%go p&opo%ona +o" 4e#an%"4o" pa&a +a e"#&%'u&a !e+ #$!%go -ue &e"pon!e a +o" e*en'o"H pe&o e" !u&an'e +a ee#u#%$n -ue "e *a '&an"%&%en!o e+ #on'&o+ a +o" 4'o!o" #o&&e"pon!%en'e"H ) e"'a +a(o& +a &ea+%a +a capa de administración de eventos H +a #ua+ e"', ue&a !e+ #on'e8'o !e nue"'&o +enguae.
Implantar eventos estndar 2entos estándar para todos los controles
Lo" e*en'o" (,"%#o" "e !e%nen en +a #+a"e CCon'&o+. To!o" +o" #on'&o+e"H "ean !e %n!o"H g&,%#o" o pe&"ona+%a!o"H e&e!an e"'o" e*en'o". La "%gu%en'e 'a(+a +%"'a +o" e*en'o" !%"pon%(+e" pa&a 'o!o" +o" #on'&o+e"M 2ento
Oc!rre c!ando
6%todo asociado
C+%#
E+ u"ua&%o p&e"%ona una *e e+ (o'$n %-u%e&!o !e+ &a'$n. E+ u"ua&%o p&e"%ona !o" *e#e" "egu%!a" e+ (o'$n %-u%e&!o !e+ &a'$n. E+ u"ua&%o a&&a"'&a e+ o(e'o #on e+ &a'$n. F%na+%a +a opa%$n !e a&&a"'&a&H e" !e#%&H "ue+'a e+ &a'$n. Se !e"p+aa po& +a pan'a++a e+ pun'e&o !e+ &a'$n. E+ pun'e&o !e+ &a'$n e"', pa"an!o "o(&e un o(e'o. P&e"%ona& e+ (o'$n !e+ &a'$n. Le*an'a& e+ !e!o !e+ (o'$n !e+ &a'$n.
A+C+%#
Do(+eC+%# A&&a"'&a&So+'a& F%nA&&a"'&a& 5o*e&Ra'$n A&&a'&a&So(&e Un!%&Ra'$n So+'a&Ra'$n
A+Do(+eC+%# A+A&&a'&a&So+'a& A+F%nA&&a"'&a& A+5o*e&Ra'$n A+A&&a"'&a&So(&e A+Un!%&Ra'$n A+So+'a&Ra'$n
Tabla .1. 2entos estándar co&!nes a las Clases co&ponentes.
To!o" +o" e*en'o" e"',n!a& '%enen "u" #o&&e"pon!%en'e" 4'o!o" !e#+a&a!o" en +a #+a"e %%ontrol H #on e+ 4%"4o no4(&e -ue e+ e*en'oH pe&o p&e#e!%!o" po& e+ p&e%o &l . A-u3 e8p&e"a4o" !e o'&a 4ane&a +o an'e&%o&4en'e !%#oM Pag. 2
Clase CControl .iene-de CComponente Métodos lClic lDo$leClic lrrastrar+oltar lMo.erRatón lrrastrar+o$re lndirRatón l+oltarRatón fclase
2entos estándar para los controles estándar
A!e4," !e +o" e*en'o" #o4une" a 'o!a" +a" #+a"e" !e #o4ponen'e"H +o" #on'&o+e" e"',n!a& !e %n!o" '%ene +o" "%gu%en'e" e*en'o"M 2ento
Oc!rre c!ando
6%todo asociado
En'&a& So+'a&Te#+a Un!%&Te#+a P&e"%ona&Te#+a Sa+%&
"e pa"a e+ o#o a+ #o4ponen'e e+ u"ua&%o !ea !e p&e"%ona& una 'e#+a e+ u"ua&%o &ea+%a p&e"%$n "o(&e una 'e#+a +a #o4(%na#%$n !e +a" !o" an'e&%o&e" pe&!e& e+ o#o
A+En'&a& A+So+'a&Te#+a A+Un!%&Te#+a A+P&e"%ona&Te#+a A+Sa+%&
Tabla .11. 2entos de las Clases co&ponentes estándar.
A+ %gua+ -ue +o" e*en'o" e"',n!a& !e +a "e##%$n an'e&%o&H +o" e*en'o" pa&a +o" #on'&o+e" !e %n!o" CCon'&o+%n!o" '%ene "u" 4'o!o" #o&&e"pon!%en'e". Clase CControlSindoTs .iene-de CControl Métodos lEntrar l+oltar4ecla lndir4ecla lJresionar4ecla l+alir fclase
2entos cla2e Clase
2ento
Oc!rre c!ando
CE!%#%$n CBo'$nA##%$n CCa"%++a
Ca4(%a& C+%# C+%#
CBo'$nRa!%o
C+%#
E+ u"ua&%o 4o!%%#a e+ 'e8'o en +a Caa. E+ u"ua&%o a#e #+%# "o(&e e+ Bo'$n. E+ u"ua&%o a#e #+%# "o(&e +a Ca"%++a !e Ve&%%#a#%$n. E+ u"ua&%o a#e #+%# "o(&e e+ Bo'$n !e &a!%o
Tabla .15. 2entos cla2e para las Clases co&ponentes.
De 'o!o" e"'o" e*en'o" #+a*eH e+ /n%#o -ue no e"', )a #on'e4p+a!o po& +a" #+a"e" e" e+ e*en'o %ambiar . Pa&a e"'e e*en'oH e+ 4'o!o a"o#%a!o en +a #+a"e CE!%#%$n "e&3a &l%ambiar .
Pag. 9@
Excepciones Una e8#ep#%$n e" po& +o gene&a+ una #on!%#%$n !e e&&o& u o'&o e*en'o -ue %n'e&&u4pe e+ +uo no&4a+ !e ee#u#%$n en una ap+%#a#%$n. Cuan!o "e provoca una e8#ep#%$nH "'a a#e -ue e+ #on'&o+ "e '&an"%e&a !e+ pun'o a#'ua+ !e ee#u#%$n a un gestor de e!cepciones . E+ "opo&'e !e 4aneo !e e8#ep#%one" !e+ +enguae !e p"eu!o#$!%go p&opo%ona una 4ane&a e"'&u#'u&a!a !e "epa&a& +a +$g%#a no&4a+ !e+ a+go&%'4o !e +a +$g%#a !e 4aneo !e e&&o&e"H a#%+%'an!o a"3 e+ 4an'en%4%en'o ) o&'a+e#%en!o +a "o+u#%$n. Pa&a &ep&e"en'a& +a" e8#ep#%one" op'a4o" po& u'%+%a& o(e'o". La" *en'aa" p&%n#%pa+e" "onM • La" e8#ep#%one" "e pue!en ag&upa& en e&a&-u3a" u'%+%an!o +a e&en#%a. • Se pue!en %n'&o!u#%& nue*a" e8#ep#%one" "%n ae#'a& e+ #$!%go e8%"'en'e. • Un o(e'o !e e8#ep#%$n pue!e ++e*a& %no&4a#%$n #o4o un 4en"ae !e e&&o& o un #$!%go !e e&&o& !e"!e e+ pun'o !on!e "e p&o*o#$ a"'a e+ pun'o !on!e "e 4anea. •
La" e8#ep#%one" "e 4anean #on +a" "en'en#%a" P&o'ege&WE8#ep#%$n.
Protección de Sentencias La" e8#ep#%one" "e 4anean u"an!o +a "en'en#%a P&o'ege&WE8#ep#%$n. Jrote!er lista de sentencias prote!idas Excepción loN"e de excepciones +ino loN"e a eBec"tar c"ando no coincide con las listadas fprote!er
Una "en'en#%a P&o'ege&WE8#ep#%$n ee#u'a +a" "en'en#%a" en +a +%"'a !e "en'en#%a" en o&!en "e#uen#%a+. S% +a" "en'en#%a" "e ee#u'an "%n -ue "e p&o*o-uen e8#ep#%one"H e+ (+o-ue !e e8#ep#%one" "e %gno&aH ) e+ #on'&o+ "e pa"a a +a "en'en#%a -ue "%gue a +a pa+a(&a &e"e&*a!a p&o'ege& -ue %na+%a +a "en'en#%a P&o'ege&WE8#ep#%$n.
0ratamiento de Excepciones C"ando identificador-clase-excepción Wacer +ec"encia de acciones para tratar la excepción fc"ando
E+ blo+ue de e!cepciones en +a "e##%$n E8#ep#%$nWp&o'ege& !e%ne +o" 4anea!o&e" !e e8#ep#%one" pa&a +a lista de sentencias protegidas . Un 4anea!o& !e e8#ep#%one" "$+o "e pue!e %n*o#a& po& una "en'en#%a P&o*o#a& ee#u'a!a en e+ +a lista de sentencias protegidas o po& un 4'o!o %n*o#a!o en +a lista de sentencias protegidas . Cuan!o "e p&o*o#a una e8#ep#%$nH e+ #on'&o+ "e '&an"%e&e a+ 4anea!o& 4," p&$8%4o -ue pue!e '&a'a& +a" e8#ep#%one" !e e"a #+a"e. La (/"-ue!a !e un 4anea!o& !e e8#ep#%$n "e %n%#%a #on +a "en'en#%a P&o'ege&WE8#ep#%$n %ng&e"a!a 4," &e#%en'e4en'e ) !e +a -ue a/n no e4o" "a+%!o. S% e"a "en'en#%a P&o'ege&WE8#ep#%$n no pue!e '&a'a& +a e8#ep#%$nH "e e8a4%na +a "%gu%en'e "en'en#%a P&o'ege&WE8#ep#%$n a +a -ue "e a %ng&e"a!o &e#%en'e4en'e. La propagación !e +a e8#ep#%$n #on'%n/a a"'a -ue "e en#uen'&a e+ 4anea!o& a!e#ua!oH o a"'a -ue no a) 4," "en'en#%a" P&o'ege&WE8#ep#%$n. En e+ /+'%4o #a"o "e e4%'e un 4en"ae !e e&&o& ) e+ a+go&%'4o %na+%a. Pag. 91
Pa&a !e'e&4%na& "% e+ blo+ue de e!cepción !e una "en'en#%a P&o'ege&WE8#ep#%$n pue!e 4anea& una e8#ep#%$n en e"pe#%a+H +o" 4anea!o&e" Cuan!oW#uan!o "e e8a4%nan en o&!en !e apa&%#%$n. E+ p&%4e& 4anea!o& !e e8#ep#%one" -ue +%"'a +a #+a"e e8#ep#%$n o +a #+a"e (a"e !e +a e8#ep#%$n "e #on"%!e&a una #o%n#%!en#%a. S% un blo+ue de e!cepción #on'%ene una pa&'e S%no ) "% n%nguno !e +o" 4anea!o&e" !e e8#ep#%one" Cuan!oW#uan!o #on#ue&!a #on +a e8#ep#%$nH +a pa&'e S%no "e #on"%!e&a una #o%n#%!en#%a. Un blo+ue de e!cepciones -ue #on'%ene "$+o una +%"'a !e "en'en#%a" "e #on"%!e&a una #o%n#%!en#%a pa&a #ua+-u%e& e8#ep#%$n. Luego !e +a ee#u#%$n !e un 4anea!o& !e e8#ep#%one"H e+ o(e'o "e !e"'&u)e au'o4,'%#a4en'e %n*o#an!o a+ 4'o!o *estructor H ) a"3 e+ #on'&o+ "e pa"a a +a "en'en#%a -ue "%gue a +a pa+a(&a #+a*e p&o'ege& +a #ua+ %na+%a +a "en'en#%a P&o'ege&W p&o'ege&. En e+ "%gu%en'e ee4p+oH e+ p&%4e& Cuan!oW#uan!o 4anea +a e8#ep#%$n !e !%*%"%$n po& #e&o ) e+ "egun!o 4anea +a e8#ep#%$n !e "o(&e+uo. Jrote!er Q Excepción C"ando CDi.isiónJorCero Wacer ManeBarDi.isiónJorCero fc"ando C"ando C+o$refl"Bo Wacer ManeBar+o$refl"Bo fc"ando fprote!er
Un 4anea!o& Cuan!oW#uan!o pue!e e"pe#%%#a& op#%ona+4en'e e"pe#%%#a& +a !e#+a&a#%$n !e un o(e'o e8#ep#%$n en *e !e "$+o e+ %!en'%%#a!o& !e +a #+a"e. A"3 po!e4o" u'%+%a& e"'a %n"'an#%a !en'&o !e +a" "en'en#%a" !e+ (+o-ue Cuan!oW#uan!o. Po& ee4p+o Jrote!er Q Excepción C"ando 9$Beto E eBemplar-de CExcepción Wacer MostrarMensaBe(9$tenerMensaBe de E) fc"ando fprote!er
E+ ,4(%'o !e un %!en'%%#a!o& !e o(e'o -ue "e !e#+a&a en un 4anea!o& !e e8#ep#%$n "on +a" "en'en#%a" -ue e"',n !en'&o !e+ Cuan!oW#uan!o. S% +a "en'en#%a P&o'ege&Wp&o'ege& e"pe#%%#a una pa&'e S%noH en'on#e" #ua+-u%e& e8#ep#%$n -ue no "e '&a'a en +o" 4anea!o&e" Cuan!oW#uan!o "e&, '&a'a!a po& +a pa&'e S%no. Po& ee4p+o Jrote!er Q Excepción C"ando CDi.isiónJorCero Wacer ManeBarDi.isiónJorCero fc"ando C"ando C+o$refl"Bo Wacer ManeBar+o$refl"Bo fc"ando +ino ManeBar9tras fprote!er
Pag. 92
Un blo+ue de e!cepción -ue no #on'%ene 4anea!o&e" Cuan!oW#uan!oH pe&o #on'%ene un g&upo !e "en'en#%a"H 4anea&, 'o!a" +a" e8#ep#%one". Jrote!er Q Excepción ManeBarExcepción fprote!er
A-u3 #ua+-u%e& e8#ep#%$n -ue o#u&&a #o4o &e"u+'a!o !e +a ee#u#%$n !e +a" "en'en#%a" !e +a" "en'en#%a" en'&e P&o'ege& ) E8#ep#%$n "e&,n 4anea!a" po& e+ 4'o!o ManejarE!cepción .
1eneración manual de Excepciones Una e8#ep#%$n "e p&o*o#a #on +a "en'en#%a P&o*o#a&. Jro.ocar identificador-o$Beto-excepción
E+ a&gu4en'o !e +a "en'en#%a P&o*o#a& !e(e "e& un o(e'o. Cuan!o "e p&o*o#a una e8#ep#%$nH +a +$g%#a !e '&a'a4%en'o !e e8#ep#%one" 'o4a "e ap&op%a !e+ o(e'o e8#ep#%$n. Una *e -ue +a e8#ep#%$n "e 4aneaH e+ o(e'o e8#ep#%$n "e !e"'&u)e au'o4,'%#a4en'e %n*o#an!o a "u destructor . No"o'&o" no !e(e4o" '&a'a& !e !e"'&u%& 4anua+4en'e e+ o(e'o e8#ep#%$n. Método In!resar7Xmero (7Xmero M&n Mx) de i$lioteca EErrorRan!o eBemplar-de CErrorRan!o Leer(7Xmero) +i (7Xmero = M&n) o (7Xmero > Mx) entonces Jro.ocar EErrorRan!o 66 llama al constr"ctor fsi fmétodo
Excepciones prede$inidas Pa&a e+ +enguae !e p"eu!o#$!%go p&opue"'o e4o" !e%n%!o #%e&'a" #+a"e" !e e8#ep#%$nH %n#+u)en!o una #+a"e CE8#ep#%$n -ue "%&*e !e &a3 pa&a 'o!a" +a" #+a"e" !e e8#ep#%$n. De(e4o" 'o4a& en #uen'a -ue a+ '&a'a&"e !e un +enguae pa&a e"pe#%%#a& a+go&%'4o"H a) #%e&'a" e8#ep#%one" -ue no apa&e#e&,n a e"'e n%*e+ po& ee4p+o +a" !e a##e"o a !%&e##%one" !e 4e4o&%a %n*,+%!a. Clase CExcepción .iene-de C9$Beto tri$"tos MensaBe ContextoDe<"da Métodos Constr"ctor(nMensaBe nContextoDe<"da) 9$tenerMensaBe --> 9$tenerContextoDe<"da --> fclase
La #+a"e CE8#ep#%$n e"'a(+e#e !o" p&op%e!a!e"H Mensaje ) %onte!to*e&,uda H -ue 'o!o o(e'o !e e8#ep#%$n e&e!a. E"'o "%gn%%#a -ue #ua+-u%e& o(e'o !e e8#ep#%$n #ua+-u%e&a pue!e po& +o 4eno" p&opo%ona& un 4en"ae !e"#&%p'%*o !e +a #on!%#%$n !e e8#ep#%$n ) po"%(+e4en'e un #on'e8'o !e a)u!a -ue aga &ee&en#%a a una a)u!a !e+ '$p%#o.
Pag. 99
A #on'%nua#%$n "e +%"'an +a" e8#ep#%one" -ue #on'e4p+a e+ +enguae !e pe"u!o#$!%go ) +a" "%'ua#%one" en -ue "e pue!en p&o*o#a&. A 4eno" -ue "e e"pe#%%-ue o'&a #o"aH +a" e8#ep#%one" "on !e"#en!%en'e" !%&e#'o" !e Ce8#ep#%$n. Clase de $cepci"n
/escripci"n
CS%n5e4o&%a
Su&ge #uan!o no a) "u%#%en'e 4e4o&%a pa&a una ope&a#%$n en pa&'%#u+a&. Su&ge #uan!o una ope&a#%$n !e en'&a!a="a+%!a gene&a un e&&o&. La #+a"e pa!&e !e 'o!a" +a" e8#ep#%one" !e ope&a#%one" 4a'e4,'%#a". Su&ge #uan!o "e %n'en'a una !%*%"%$n -ue '%ene po& !%*%"o& un *a+o& !e #e&o. De"#%en!e !e CE&&o&5a'e4,'%#o. Su&ge #uan!o una ope&a#%$n p&o!u#e un "o(&e+uo o*e&+o. E"', 4," o&%en'a!a a +a %4p+an'a#%$nH pe&o e" 'an &e#uen'e -ue #a(e "u %n#+u"%$n. De"#%en!e !e CE&&o&5a'e4,'%#o. Apa&e#e #uan!o +a p%+a !e nue"'&a ap+%#a#%$n no pue!e e8pan!%&"eH o "% e+ 'a4a0o !e +a p%+a a+#ana "u +34%'e "upe&%o&. E"'a e8#ep#%$n p&e"upone un +34%'e en +a p%+aH una &e"'&%##%$n 3"%#aH pe&o "u &e#uen#%a a4e&%'a %n#+u%&+a.
CE&&o&ES CE&&o&5a'e4,'%#o CD%*%"%$nPo&Ce&o CSo(&e+uo
CSo(&e+uoDeP%+a
Tabla .1'. Clases deri2adas de C$cepci"n.
Pag. 9:
Objetos Especiales (rreglos Lo" a&&eg+o" '%enen un n/4e&o %o !e #o4ponen'e" !e+ 4%"4o '%po !e *a+o&. /eclarar
Pa&a !e#+a&a& un a&&eg+o en e+ p"eu!o#$!%goH ne#e"%'a4o" e"pe#%%#a& un no4(&e o %!en'%%#a!o& pa&a e+ a&&eg+o. A"3 4%"4o 'ene4o" -ue %n!%#a& e+ &ango !e *a+o&e" pa&a #a!a una !e +a" !%4en"%one" !e+ a&&eg+o. Pa&a %n!%#a& e+ &ango !e *a+o&e" !e uno !e +o" "u(3n!%#e"H "%4p+e4en'e e"pe#%%#a4o" +o" +34%'e" %ne&%o& ) "upe&%o& !e+ &ango ) #o+o#a4o" en'&e e++o" pun'o" "u"pen"%*o" …. E+ n/4e&o !e e+e4en'o" !e+ a&&eg+o e" e+ p&o!u#'o !e +o" *a+o&e" 4,8%4o" !e #a!a "u(3n!%#e. nom$'de'arre!lo 8 Dimensión ran!o1 ,,,,, ran!on : EBemplar-de Crre!lo
Po& ee4p+oM
aMatri1 Dimensión 1Q1 1Q EBemplar-de Carre!lo
A-u3 !e%n%4o" un a&&eg+o ++a4a!o a5a'&%1 #u)o n/4e&o !e e+e4en'o" e" 1@2@. No'en -ue e"'a4o" #o+o#an!o e+ p&e%o a en e+ no4(&e !e+ a&&eg+oH +o -ue %n!%#a -ue e+ %!en'%%#a!o& #o&&e"pon!e a un arreglo . Deferencia
Po!e4o" a##e!e& a uno !e +o" #o4ponen'e" p&opo%onan!o e+ %!en'%%#a!o& !e+ a&&eg+o #on e+ 3n!%#e #o&&e"pon!%en'e en#e&&a!o en'&e #oe'e". S% no %n#+u%4o" +a &ee&en#%a a un #o4ponen'e en pa&'%#u+a&H e+ %!en'%%#a!o& !e+ a&&eg+o &ee&en#%a a +a 'o'a+%!a! !e "'e. nom$re'de'arre!lo 8&ndice: 66 n elemento del arre!lo nom$re'de'arre!lo 66 4odo el arre!lo
En e+ "%gu%en'e ee4p+o 4o"'&a4o" e+ u"o !e a4(a" po"%(%+%!a!e". al"mno Dimensión 1Q 1Q1 EBemplar-de Crre!lo al"mno Dimensión 1Q1 EBemplar-de Crre!lo al"mnoC Dimensión 1Q1 EBemplar-de Crre!lo Q al"mnoC =-- al"mno 66 referencia a todo el arre!lo al"mno82: =-- al"mno 66 referencia !lo$al a "na dimensión al"mno8Y : =-- rt"ro Lópe*66 referencia a "n componente
teraci"n sobre colecciones
Pa&a e+ #a"o !e +a" #o+e##%one" !e e+e4en'o"H "e u'%+%a una *a&%an'e !e +a "en'en#%a pa&aH +a #ua+ e"pe#%%#a #$4o "e %!en'%%#a&, a+ e+e4en'o a#'ua+ en #a!a %'e&a#%$n ) a +a #o+e##%$n -ue "e &e#o&&e&,. La "%n'a8%" e" +a "%gu%en'e. para cada IdentificadorElemento en IdentificadorColección Kacer +ec"encia de nG acciones fpara
Po& ee4p+oM o$Beto arre!loJersonas eBemplar-de Crre!loJersonas ,,,
Pag. 9;
para cada persona en arre!loJersonas Kacer Escri$ir(persona,o$tener7om$re) fpara
(puntadores Lo" apun'a!o&e" "on *a&%a(+e" -ue a+4a#enan un '%po" e"pe#%a+ !e *a+o&M !%&e##%one" !e 4e4o&%a. En e"a" !%&e##%one" "e gua&!an *a+o&e" &e+e*an'e" pa&a nue"'&o a+go&%'4o. Deser2ar espacio
La ope&a#%$n !e &e"e&*a& e"pa#%o pa&a e+ apun'a!o& po!&3a #o4pa&a&"e #on +a a##%$n !e !e#+a&a& a+ "%"'e4a -ue e+ %!en'%%#a!o& e"pe#%%#a!o "e &ee&%&, a un apun'a!o&. Reser.ar identificador'ap"ntador | Reser.ar identificador'ap"ntador;Cantidad'Elementos
La "en'en#%a Re"e&*a& a"%gna un (+o-ue !e 4e4o&%a +%(&e pa&a e+ apun'a!o& ) a+4a#ena +a !%&e##%$n !e e"e (+o-ue en e+ apun'a!o&. Cuan!o "e !e"ea &e"e&*a& un a&&eg+o !e (+o-ue" #on'%guo" !e 4e4o&%aH "e 4u+'%p+%#a po& +a #an'%!a! !e (+o-ue" &e-ue&%!o". La pa+a(&a &e"e&*a!a nulo !eno'a un *a+o& -ue "%gn%%#a -ue nue"'&a *a&%a(+e apunta a ninguna parte . Reser.ar pC"enta pC"enta =-- n"lo
66 Reser.a espacio para el ap"ntador 66 ap"nta a nin!"na parte
signar 2alor
Lo" apun'a!o&e" pue!en &e#%(%& !%&e##%one" #o4o *a+o&e" *,+%!o". Pa&a o('ene& +a !%&e##%$n !e una *a&%a(+e (a"'a #on #o+o#a& e+ "34(o+o K an'e" !e+ %!en'%%#a!o& !e +a *a&%a(+e ) e"'o !eno'a&, "u !%&e##%$n !e 4e4o&%a. O'&a 4ane&a !e a"%gna& *a+o& e" #o+o#a& !%&e##%one" e"pe#3%#a" )a "ea en no'a#%$n !e#%4a+ o e8a!e#%4a+ a4(a" 4u) #ono#%!a" po& no"o'&o"H o en "u !ee#'o u'%+%an!o nulo. identificador'ap"ntador =-- 0 identificador ó identificador'ap"ntador =-- expresión'de'dirección
Liberar espacio
La "en'en#%a L%(e&a& no" pe&4%'e !e*o+*e& a+ "%"'e4a e+ (+o-ue !e 4e4o&%a -ue ue&a a"%gna!o a+ apun'a!o& #on +a "en'en#%a Re"e&*a&. Li$erar identificador'ap"ntador
Po& ee4p+oM Li$erar pC"enta cceder al 2alor ap!ntado
66 Li$era la memoria asi!nada a pCuenta
Pa&a po!e& a##e!e& a+ (+o-ue !e 4e4o&%a apun'a!oH "e u'%+%a e+ ope&a!o& ↑ !e+an'e !e+ no4(&e !e+ apun'a!o&. identificador'ap"ntador =-- .alor
Po& ee4p+oM pC"enta =-- Z12Y[\]YZ
/espla:a&iento con ap!ntadores
En +o" #a"o" !e apun'a!o&e" a a&&eg+o" !e (+o-ue"H pa&a a*ana& a un (+o-ue e"pe#3%#o !e+ a&&eg+o "e u'%+%a +a "%gu%en'e "%n'a8%"H "e %n#&e4en'a e+ *a+o& !e+ apun'a!o& en +a #an'%!a! !e po"%#%one" -ue "e !e"ea !e"p+aa&. identificador'ap"ntador =-- identificador'ap"ntador 3 n
Pag. 9<
Po& ee4p+oM p7"meros =-- p7"meros 3 12 66 +e desplaa 12 $loN"es
Estructuras A %n !e #u(&%& +a e8%"'en#%a !e '%po" estructura e8%"'en'e" en a+guno" +enguae" "'&u#' en C o CXH oLoop pe&4%'e +a !e#+a&a#%$n !e estructuras- 4u) "%4%+a&e" a +a" #+a"e"H pe&o #on +a !%e&en#%a !e -ue no po"een #on"'&u#'o& n% "on #apa#e" !e pa&'%#%pa& en una e&a&-u3a. Son (,"%#a4en'e un '%po !e *a+o& #o4pue"'o pa&a !e#+a&a#%$n !e *a&%a(+e"H 4," -ue una #+a"e -ue pue!a a#ep'a& #&ea#%$n !e %n"'an#%a". La "%n'a8%" pa&a !e#+a&a& e"'&u#'u&a" "e p&e"en'a a #on'%nua#%$n.
Estr"ct"ra IdentificadorEstr"ct"ra
tri$"tos Identificadortri$"to % Identificadortri$"to Métodos sec"encia de mG declaraciones de métodos festr"ct"ra
Po& ee4p+oM Estr"ct"ra +Fi!"ra tri$"tos Lar!o ncKo 9$Beto Lpi eBemplar-de CLpi 9$Beto rocKa eBemplar-de CrocKa Métodos 9$tenerLar!o --> 9$tenerncKo --> ColocarLar!o(7"e.oLar!o) ColocarncKo(7"e.oncKo) festr"ct"ra
Pa&a !e#+a&a& *a&%a(+e" !e e"'&u#'u&aH "e u'%+%a +a "%gu%en'e "%n'a8%".
identificador'.aria$le eBemplar-de IdentificadorEstr"ct"ra
Po& ee4p+oM
Estr"ct"ra +InformaciónJedido tri$"tos 7XmeroJedido FecKaJedido festr"ct"ra ,,, informaciónJedido eBemplar-de +InformaciónJedido informaciónJedido,7XmeroJedido =-- ^2
Enumeraciones En 4u#o" +enguae" !e p&og&a4a#%$n "e %4p+e4en'a e+ #on#ep'o !e enu4e&a#%one" o '%po" enu4e&a!o". En oLoop "e pue!e !e#+a&a& '%po" pa&a enu4e&a#%one" #on +a "%gu%en'e "%n'a8%". En"meración IdentificadorEn"meración 8 .alor1 % .alor,, .alor7 : En"meración EEstadoJedido 8 JE7DIE74E JR9D9 RECW5D9 :
Pa&a !e#+a&a& una *a&%a(+e !e un '%po enu4e&a!oH "e u'%+%a +a "%gu%en'e "%n'a8%". Pag. 9>
identificador'.aria$le eBemplar-de IdentificadorEn"meración
Po& ee4p+oM pedido eBemplar-de EEstadoJedido pedido =-- EEstadoJedido,Jendiente
Inter$aces Pa&a !e#+a&a& %n'e&a#e" en oLoop "e u'%+%a +a "%gu%en'e "%n'a8%". Interfa IdentificadorInterfa tri$"tos Identificadortri$"to % Identificadortri$"to Métodos sec"encia de mG declaraciones de métodos finterfa IdentificadorMétodo 8 ( ListaFormalJarmetros ) : 8 --> : 8 .irt"al | .irt"al a$stracto | so$reescri$ir | so$recar!ar : ListaFormalJarmetros Identificador
--> 8 0 : Identificador % 8 0 :
Po& ee4p+oM Interfa IManeBadorCliente Métodos o$tenerInstancia -> re!istrarCliente(cliente) -> fclase
Pa&a !e#+a&a& -ue una #+a"e %4p+e4en'a una %n'e&aH "e u'%+%a +a "%gu%en'e "%n'a8%". Clase IdentificadorClase implementa IdentificadorInterfa tri$"tos Identificadortri$"to % Identificadortri$"to Métodos sec"encia de mG declaraciones de métodos fclase
Po& ee4p+oM Clase CCliente7e!ocio implementa IManeBadorCliente Metodos o$tenerInstancia -> re!istrarCliente(cliente) -> fclase Método CCliente7e!ocio,o$tenerInstancia -> 9$Beto cliente eBemplar-de CCliente7e!ocio cliente,constr"ctor retornar cliente fmétodo Método CCliente7e!ocio,re!istrarCliente(cliente) IccesoDatos facade Infraestr"ct"raFacade,o$tenerInstancia retornar facade,insertarCliente( cliente,o$tenerCodi!o cliente,o$tener7om$re cliente,o$teners"ario cliente,o$tenerContrasena
Pag. 9?
fmétodo
cliente,o$tenerCorreo cliente,o$tener4elefono cliente,o$tenerFax cliente,o$tenerJais)
(rc,ivos oLoop pe&4%'e e+ u"o !e a%*o" "e#uen#%a+e" o a+ea'o&%o". Pa&a e++o #uen'a #on +a #+a"e p&e!e%n%!a CA%*o. E"'a #+a"e en#ap"u+a +a un#%ona+%!a! gen&%#a pa&a e+ 4aneo !e a%*o". La !e#+a&a#%$n !e +a #+a"e CA%*o "e e"pe#%%#a a #on'%nua#%$n. Clase CrcKi.o tri$"tos 7om$re R"ta Modocceso
66 66 66 66 66
7om$re del arcKi.o R"ta de directorio del arcKi.o ZLect"raZ | ZEscrit"raZ | ZLect"ra-Escrit"raZ | ZdiciónZ Z+ec"encialZ | ZleatorioZ
4ipo Métodos Crear -> $rir -> Cerrar -> Leer -> Leer(pJosicion) -> Escri$ir(9$Beto) Escri$ir(Josicion 9$Beto) 9$tener7om$re -> Colocar7om$re(7"e.o7om$re) 9$tenerR"ta -> ColocarR"ta(7"e.aR"ta) 9$tenerModocceso -> ColocarModocceso(7"e.oModocceso) 9$tener4ipo -> Colocar4ipo(7"e.o4ipo) FinDercKi.o -> fclase
Pag. 9
Eje!plos de uso de oLoop Declaración de lases * %&todos E+ "%gu%en'e ee4p+o %+u"'&a !e 4ane&a "en#%++a +a !e#+a&a#%$n !e una C+a"e. De%n%4o" una #+a"e Pun'oH -ue en'en!e4o" po& un p%8e+ en +a pan'a++a. Pa&a !e%n%&+o ne#e"%'a4o" "u" #oo&!ena!a" e Y. Clase CJ"nto tri$"tos / ? Métodos 9$tener/ 9$tener? Constr"ctor(7"e.o/ 7"e.o?) fclase
Pag. :@
I!plantación de &'todos Con'%nuan!o #on nue"'&o ee4p+o !e+ pun'oH !e4o"'&a4o" #o4o !e#+a&a& +a" !e%n%#%one" !e +o" 4'o!o" !e +a #+a"e a&&%(a !e%n%!a. Método CJ"nto,Constr"ctor(7"e.o/ 7"e.o?) / =-- 7"e.o/ ? =-- 7"e.o? fmétodo Método CJ"nto,9$tener/ Retornar / fmétodo Método CJ"nto,9$tener/ Retornar ? fmétodo
Pag. :1
(erencia y Extensión de Clases En e"'e ee4p+o -ue p&e"en'a4o" a #on'%nua#%$n ap+%#a&e4o" e+ 4e#an%"4o !e +a e&en#%a pa&a e8'en!e& +a #+a"e Cpo"%#%$n. Clase CJosición tri$"tos / ? Métodos Constr"ctor(7"e.o/ 7"e.o?) 9$tener/ --> 9$tener? --> fclase Clase CJ"nto .iene-de CJosición tri$"tos #isi$le Métodos Constr"ctor(7"e.o/ 7"e.o?) Mostrar 9c"ltar 9$tener#isi$le Mo.erWacia(O"e/ O"e?) fclase 66 Métodos de la Clase CJosición Método CJosición,Constr"ctor(7"e.o/ 7"e.o?) / =-- 7"e.o/ ? =-- 7"e.o? fmétodo Método CJosición,9$tener/ Retornar / fmétodo Método CJosición,9$tener? Retornar ? fmétodo 66 Métodos de la Clase CJ"nto Método CJ"nto,Constr"ctor(7"e.o/ 7"e.o?) Weredado Constr"ctor(7"e.o/ 7"e.o?) #isi$le =-- Falso fmétodo Método CJ"nto,9$tener#isi$le Retornar #isi$le fmétodo Método CJ"nto,Mostrar #isi$le =-- #erdadero Di$"BarJixel(/ ? 9$tenerColorJrimerJlano) 66 Di$"Ba "n pixel en la pantalla ($lanco so$re ne!ro) fmétodo Método CJ"nto,9c"ltar #isi$le =-- Falso Di$"BarJixel(/ ? 9$tenerColorFondo) 66 Di$"Ba "n pixel en la pantalla (ne!ro so$re ne!ro) fmétodo Método CJ"nto,Mo.erWacia(O"e/ O"e?) 9c"ltar 66 9c"lta el p"nto / =-- O"e/ 66 si!na las n"e.as coordenadas
Pag. :2
? =-- O"e? Mostrar fmétodo
66 M"estra el p"nto
66 La clase CC&rc"lo ser "n KiBo de CJ"nto, Clase CC&rc"lo .iene-de CJ"nto tri$"tos Radio Métodos Constr"ctor(7"e.o/ 7"e.o? 7"e.oRadio) Mostrar 9c"ltar Expandir Mo.erWacia Contraer fclase Método CC&rc"lo,Constr"ctor(7"e.o/ 7"e.o? 7"e.oRadio) Weredado Constr"ctor(7"e.o/ 7"e.o?) Radio =-- 7"e.oRadio fmétodo Método CC&rc"lo,Mostrar #isi$le =-- #erdadero Di$"BarC&rc"lo(/ ? Radio 9$tenerColorJrimerJlano) 66 Di$"Ba "n c&rc"lo en la pantalla ($lanco so$re ne!ro) fmétodo Método CC&rc"lo,9c"ltar #isi$le =-- Falso Di$"BarC&rc"lo(/ ? Radio 9$tenerColorFondo) Di$"Ba "n c&rc"lo en la pantalla (ne!ro so$re ne!ro) fmétodo
66
Método CJ"nto,Mo.erWacia(O"e/ O"e?) 9c"ltar / =-- O"e/ ? =-- O"e? Mostrar fmétodo Método CC&rc"lo,Expandir(FactorExpansión) 9c"ltar Radio Radio 3 FactorExpansión Mostrar fmétodo
Método CC&rc"lo,Contraer(FactorContracción) Expandir(-FactorContracción) fmétodo Método CC&rc"lo,Mo.erWacia(O"e/ O"e?) 9c"ltar / =-- O"e/ ? =-- O"e? Mostrar fmétodo
E"'e "en#%++o ee4p+o no" 4ue"'&a +a "%4u+a#%$n !e una pe-ue0a 4u) pe-ue0a #on*e&"a#%$n en'&e !o" o(e'o" !e +a C+a"e CPe&"ona. Clase C+e!mento tri$"tos L"!ar n"+e!mento Métodos Constr"ctor(7"e.o+e!mento 7"e.oL"!ar) ImprimirEnca$eado cción ImprimirCorte
Pag. :9
fclase Método C+e!mento,Constr"ctor(7"e.o7Xmero 7"e.oL"!ar) L"!ar =-- 7"e.oL"!ar n"+e!mento =-- 7"e.o+e!mento fmétodo Método C+e!mento,ImprimirEnca$eado L&nea4exto =-- +e!mento _ 3 n"+e!mento 3 3 L"!ar Escri$ir(L&nea4exto) fmétodo Método C+e!mento,cción fmétodo Método C+e!mento,ImprimirCorte Escri$ir(------------------) fmétodo Clase CJersona tri$"tos nmJersona 66 7om$re de persona L&neaEtiN"eta Métodos Constr"ctor(7"e.o7om$re 7"e.aL&nea) ColocarL&neaEtiN"eta(O"eL&nea) 9$tenerL&neaEtiN"eta --> Decir(L&nea) fclase Método CJersona,Constr"ctor(7"e.o7om$re 7"e.aL&nea) nmJersona =-- 7"e.o7om$re L&neaEtiN"eta =-- 7"e.aL&nea fmétodo Método CJersona,9$tenerL&neaEtiN"eta Retornar L&neaEtiN"eta fmétodo Método CJersona,ColocarL&neaEtiN"eta(O"eL&nea) L&neaEtiN"eta =-- O"eL&nea fmétodo Método CJersona,Decir(L&nea) L&nea4exto =-- nmJersona 3 H G* 3 L&nea 3 G* Escri$ir(L&nea4exto) fmétodo Clase CDilo!o .iene-de C+e!mento tri$"tos 9$Beto Jersona eBemplar-de CJersona 9$Beto Jersona eBemplar-de CJersona Métodos Constr"ctor(7"e.o7Xmero 7"e.aL&nea nmctor1 nmctor) cción +al"dos Con.ersar Despedirse fclase Método CJersona,Constr"ctor(7"e.o7Xmero 7"e.oL"!ar nmctor1 nmctor) Weredado Constr"ctor(7"e.o7Xmero 7"e.oL"!ar) Jersona,Constr"ctor(nmctor1 *) Jersona,Constr"ctor(nmctor *) fmétodo Método CDilo!o,cción
Pag. ::
!radecimientos Con.ersar Despedirse fmétodo Método CDilo!o,+al"dos Jersona,Decir(Wola*) Jersona,Decir(O"e tal*) Jersona,ColocarL&neaEtiN"eta(+i N"e Kace calor*) Jersona,ColocarL&neaEtiN"eta(? N"e lo di!as*) fmétodo Método CDilo!o,Con.ersar Jersona,Decir(Jersona,9$tenerL&neaEtiN"eta) Jersona,Decir(Jersona,9$tenerL&neaEtiN"eta) fmétodo Método CDilo!o,Despedirse Jersona,Decir(CKa"*) Jersona,Decir(7os .emos*) fmétodo
Pag. :;
)ibliograf$a ●
●
●
●
●
●
Pag. :<
VOSSH G&eg 1: 'rogramación )rientada a )bjetos. /na 0ntroducción .H 5#G&a %++H 58%#o. O&%g. O(e#'O&%en'e! P&og&a44%ngM An In'&o!u#'%on. BUDDH T%4o') 1: 0ntroducción a la 'rogramación )rientada a )bjetos . A!!%"on e"+e) I(e&oa4e&%#ana. %+4%ng'onH De+aa&e. GALLARDO OTEROH 5anue+ PZRE[ CABRELH Teo!o4%&o 1; Estructura de *atos. /n enfo+ue &lgortmico . L%4a. Un%*e&"%!a! Na#%ona+ 5a)o& !e San 5ao" Fa#u+'a! !e C%en#%a" 5a'e4,'%#a"H E"#ue+a A#a!4%#o P&oe"%ona+ !e Co4pu'a#%$n. E5ATPOURH Sa&a4 12 %11 . 2ua para 'rogramadores en % . 58%#o. P&en'%#e a++ In#. EISA5PH e%' EINYH Lo&en FLA5INGH B&)an 19 'rogramación )rientada a )bjetos con Turbo %11 . 58%#o. E!%'o&%a+ L%4u"a S.A. !e C.V. G&upo No&%ega E!%'o&e". RUBENINGH Ne%+ 1; *elphi 'rogramming 'roblem Solver . IDG Boo" o&+!%!e In#. ISBN 1;?:>;;.
Sugerencias para la escritura de Pseudocódigo Indentación Pa&a a#%+%'a& +a #o4p&en"%$nH +e#'u&a ) &e*%"%$n !e+ p"eu!o#$!%goH "e #&e$ e+ #on#ep'o !e %n!en'a#%$n en +a e"#&%'u&a !e +o" 4%"4o". E"'a #on"%"'e en e+ !e"p+aa4%en'o a#%a +a !e&e#a !e un "u(#onun'o !e +a "e#uen#%a !e a##%one". Aun-ue +o" (+o-ue" e"',n !eno'a!o" po& pa+a(&a" "u(&a)a!a"H Si..fsiH e'#.. E" &e#o4en!a(+e !e"p+aa& !o" o '&e" po"%#%one" e+ (+o-ue pa&a a#%+%'a& +a #o4p&en"%$n !e+ +uo +$g%#o.
Idioma de 0rabajo La no4en#+a'u&a !e %!en'%%#a!o&e" !e *a&%a(+e"H a##%one"H un#%one"H e"'&u#'u&a"H e'#.H !e(e e"'a& &eg%!a po& un %!%o4a /n%#o pa&a +og&a& +a un%o&4%!a! en e+ p"eu!o#$!%go. E"'o p&o!u#e una "en"a#%$n !e a&4on3a ) a)u!a a +a ,#%+ #o4p&en"%$n !e+ 4%"4o. A+guno" au'o&e" u'%+%an e+ %!%o4a %ng+" po&-ue +e" (&%n!a 4a)o& *e&"a'%+%!a! en +a no4en#+a'u&a una e8p&e"%$n en e"pa0o+ pue!e "%gn%%#a& una "o+a pa+a(&a en %ng+" o a&4on3a #on e+ +enguae !e p&og&a4a#%$n en -ue %4p+e4en'a&,n e+ p"eu!o#$!%go. O'&o" p&e%e&en e+ e"pa0o+ po& #o4o!%!a! ) pa&a +og&a& una 4a)o& #+a&%!a! ) #o4p&en"%$n po& pa&'e !e+ +e#'o&. Pa&a e+eg%& e+ %!%o4a !e no4en#+a'u&a !e(e 'ene&"e en #uen'a +a #o4o!%!a! pe&"ona+H e+ g&a!o !e !%u"%$n !e+ p"eu!o#$!%go en e+ #a"o !e '&a(ao en g&upo o pa&a p&e"en'a&+o a 'ee&o" ) +a +u%!e -ue po"ee4o" "o(&e un %!%o4a. E"'a /+'%4a no" pe&4%'%&, u'%+%a& e+ '&4%no e8a#'o -ue a)u!e a #ap'a& e+ "%gn%%#a!o !e+ *a+o&H a##%$n o un#%$n.
2otación de Identi$icadores Lo" %!en'%%#a!o&e" "on #a!ena" !e 'e8'o -ue pe&4%'en a#e& &ee&en#%a a *a+o&e" !e'e&4%na!o". 5u#a" *e#e"H po& a+'a !e #o"'u4(&e o po& \&ap%!e\H no ap&o*e#a4o" +a" p&op%e!a!e" %no&4a'%*a" !e +o" %!en'%%#a!o&e". E+ no4(&e !e una *a&%a(+e no" pue!e !a& %no&4a#%$n "o(&e e+ "%gn%%#a!o !e+ *a+o& a+ -ue &ee&en#%a no4(&e !e una pe&"onaH #on'a!o&H a#u4u+a!o& !e 'o'a+e"H e'#.H e+ '%po !e *a+o& nu4&%#oH #a!ena !e #a&a#'e&e"H e"'&u#'u&aH e'#. o +a #a'ego&3a !e *a+o& po"%(+e" e"'a!o" #%*%+e" po& ee4p+o. so de &a;7sc!las ; &in7sc!las en dentificadores
E+ u"o !e 4a)/"#u+a" ) 4%n/"#u+a" no" (&%n!a un 4a)o& &ango !e po"%(%+%!a!e" en +a no'a#%$n ) a!e4," %n#&e4en'a +a +eg%(%+%!a! !e+ %!en'%%#a!o&. E" 4a" #+a&o e"#&%(%& C+a"eDeDa'o -ue CLASEDEDATOH u O('ene&Co!%goDeFa#'u&a -ue OBTENERCODIGODEFACTURA. Eotaci"n 97ngara
Un '%po !e no'a#%$n 4u) #ono#%!a en e+ a4(%en'e %no&4,'%#o e" e+ !e +a notaci"n 07ngaraH en e+ #ua+ una +e'&a !eno'a e+ '%po !e *a+o& #on -ue '&a(aa +a *a&%a(+eH a"3M
Pag. :>