Manual Fundamentos Java

download Manual Fundamentos Java

of 141

Transcript of Manual Fundamentos Java

  • 8/10/2019 Manual Fundamentos Java

    1/141

    Fundamentos de Java Julio 2008

    CURSO - TALLER

    Fundamentos de JavaAUTOR DEL MANUAL:

    DOCENTE:NGEL CATA T!JOS" DEL CARMEN CANCUCAJA#$LCE%

    Material compartido por el autor para la realizacin del curso, no utilizar para otros fines distintos a los de la capacitacin.Revisado y adaptado por Jos Canchucaja V.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.0

  • 8/10/2019 Manual Fundamentos Java

    2/141

    Fundamentos de Java Julio 2008

    &ND&CEINDICE........................................................................................................................................1$ema %. C&'C()$&* +A*!C&* -('/AJ( 0( )R&RAMAC!1'..................................................5

    1.1. INTRODUCCION.............................................................................................................. 51.1.1 Caractersticas de Java...................................................................................................5

    1.1.2. Java en la empresa.........................................................................................................5

    1.1.3. Java en tu PC.................................................................................................................6

    1.1.4. Java Virtual Machine (JVM)........................................................................................211.1.5. l rec!lect!r de "asura (#ar"a$e C!llect!r)...............................................................22

    1.2. TIPOS DE DATOS..........................................................................................................231.2.1 Varia"les........................................................................................................................23

    1.3. OPERADORES...............................................................................................................251.3.1. %perad!r de asi$naci&n...............................................................................................25

    1.3.2. %perad!res aritm'tic!s................................................................................................25

    1.3.3. %perad!res ncrement! *ecrement!........................................................................251.3.4. %perad!res de C!mparaci&n........................................................................................25

    1.3.5. %perad!res +&$ic!s.....................................................................................................26

    1.3.6. %perad!res C!mpuest!s..............................................................................................261.3.,. %perad!res c!n Cadenas..............................................................................................26

    1.3.-. Precedencia de !perad!res...........................................................................................2,

    1.3.. J/CC%0...............................................................................................................2,ercici! 2..............................................................................................................................2,

    1.4. CONTROL DE FLUJO....................................................................................................281.4.1 l!ues en Java............................................................................................................2-

    1.4.2. +0....................................................................................................................21.4.3. anidad!s...................................................................................................................2

    1.4.4. rr!res c!munes..........................................................................................................3

    1.4.5. l !perad!r c!ndici!nal (7)........................................................................................31.4.6. +a sentencia 089C:.................................................................................................31

    1.4.,. J/CC%0...............................................................................................................321.5. LOS CICLOS REPETITIVOS.......................................................................................... 33

    1.5.1. 8:+.........................................................................................................................33

    1.5.2. *%...8:+................................................................................................................34

    1.5.3. + CC+% %/...........................................................................................................341.5.4. //%/0 C%M;

  • 8/10/2019 Manual Fundamentos Java

    3/141

  • 8/10/2019 Manual Fundamentos Java

    4/141

    Fundamentos de Java Julio 2008

    4.5.3. Atraer una su"cadena.................................................................................................61

    4.5.4. C!nvertir a maBsculas ! minBsculas..........................................................................614.5.5. liminar espaci!s del inici! el ?inal de la cadena.....................................................61

    4.5.6. ;"icar una su"cadena desde una u"icaci&n.................................................................61

    4.5.,. C!mparand! d!s cadenas............................................................................................61

    4.5.-. C!mparand! re$i!nes de una cadena..........................................................................624.5.. %"tener cadenas desde las primitivas..........................................................................62

    4.5.1. %"tener primitivas desde las cadenas........................................................................624.5.11. J/CC%0.............................................................................................................62

    4.-. ARRELOS DE CADENAS............................................................................................-34.6.1. *e?inici!n....................................................................................................................63

    4.6.2. ercici!s.....................................................................................................................634.7. AIN...............................................................................................................................-44.8 LABORATORIO............................................................................................................... -4

    0e$unda Parte........................................................................................................................6,$ema 5. 6(R('C!A )&-!M&R7!*M&..........................................................................................-+

    5.1. ,ERENCIA..................................................................................................................... -+5.1.1 *e?inici&n.....................................................................................................................6

    5.1.2. +a herencia en Java......................................................................................................6

    5.1.3. +a re?erencia super......................................................................................................,5.1.4. M't!d!s.......................................................................................................................,

    5.1.5. +a re?erencia super......................................................................................................,15.2. P'"$#'($#'................................................................................................................... 725.3. E" 'p%(a/'( $n&anc%' ca&......................................................................................... 745.4. A&($)!&' #&'/' c"a% $na"..................................................................................... 74

    5.4.1. Varia"les final..........................................................................................................,4

    5.4.2. M't!d!s ?inal...............................................................................................................,4

    5.4.3. Clases ?inal...................................................................................................................,4

    5.5. E" #&'/' $na"$6%.........................................................................................................755.-. E*%(c$c$'.......................................................................................................................... 7-5.7. La)'(a&'($'......................................................................................................................77

    $ema 8. C-A*(* A+*$RAC$A* ( !'$(R7A*(*...............................................................................81-.1. CLASES ABSTRACTAS................................................................................................. 81-.2. In&%(a%.......................................................................................................................82

    +a"!rat!ri!............................................................................................................................-3

    J/CC% 1........................................................................................................................-4

    ercici! 2..............................................................................................................................-5

    ercici! adici!nal.................................................................................................................-5$ema 9. C&-(CC!&'(* 0( &+J($&*...........................................................................................87

    7.1. LA CLASE OBJECT........................................................................................................87,.1.1. C!nvertir primitivas en re?erencias.............................................................................-,

    7.2. COLECCIONES.............................................................................................................. 87,.2.1. =ruitectura.................................................................................................................--,.2.2. nter?aces de c!lecci!nes.............................................................................................--

    7.3. E*%#p"' /% c"a% $#p"%#%n&a/a. L$&..........................................................................8+,.3.1. *e?iniend! una clase....................................................................................................

    ,.3.2. M!strar l!s element!s de una c!lecci&n. =rra+ist.....................................................,.3.3. vitar !"et!s duplicad!s. :ash0et.............................................................................1

    ,.3.4. Manear c!lecci!nes !rdenadas. 9ree0et.....................................................................3

    ,.3.5. %rdenar "uscar en C!lecci!nes. C!llecti!ns............................................................5

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.3

  • 8/10/2019 Manual Fundamentos Java

    5/141

    Fundamentos de Java Julio 2008

    7.4. E*%#p"' /% c"a% $#p"%#%n&a/a. ap.........................................................................+7,.4.1. empl! de :ashMap..................................................................................................,,.4.2. empl! de 9reeMap....................................................................................................-

    7.5. EJERCICIO.....................................................................................................................++$ema :. MA'(J& 0( (;C()C!&'(*.........................................................................................100

    8.1. E9CEPCIONES............................................................................................................ 100-.1.1. *e?inici!nes...............................................................................................................1-.1.2. Caractersticas del Java..............................................................................................1-.1.3. Acepci!nes...............................................................................................................11

    -.1.4. 9hr!a"le..................................................................................................................12

    -.1.5. Due se puede hacer c!n una Acepci&n...................................................................128.2. E9CEPCIONES CON JAVA..........................................................................................103

    -.2.1. C!m! capturar manear una eAcepci&n...................................................................13

    -.2.2. Capturand! una eAcepci&n.........................................................................................13-.2.3. Capturand! mBltiples eAcepci!nes............................................................................13

    -.2.4. ecuci&n del "l!ue ?inall......................................................................................14

    -.2.5. C!m! pasar la eAcepci&n al m't!d! inv!cad!..........................................................15-.2.6. C!m! lanEar una eAcepci&n.......................................................................................15

    -.2.,. C!m! crear una eAcepci&n.........................................................................................16

    -.2.-. C!m! capturar una eAcepci&n lanEar !tra di?erente...............................................168.3. LABORATORIO............................................................................................................ 10-8.4. EJERCICIO...................................................................................................................107

    $ema

  • 8/10/2019 Manual Fundamentos Java

    6/141

    Fundamentos de Java Julio 2008

    Tema 1. CONCEPTOS BASICOS Y LENGUAJE DE PROGRAMACINResumenSe estudiara los elementos bsicos del lenguaje Java, variables, operadores y control de lujo!

    1.1. INTRODUCCION.

    '!'!' Ca(a)te(*st+)as de JavaS+m,eR%/!c% %n !n 50= "' %(('(% #> c'#!n% /% p('?(a#ac$

  • 8/10/2019 Manual Fundamentos Java

    7/141

    Fundamentos de Java Julio 2008

    '!'!7! Java en tu 6C!L' p('?(a#a &$%n%n %;&%n$n /$p'n$)"% %n &&p*aa.!n.c'#%n !n '"' pa!%&% c'n'c$/' c'#' J2SE.

    E" %*%c!&a)"% p!%/% %( %" $?!$%n&%

    jdk-6u5-windows-i586-p.exe

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.-

    ,'"a.*aa

    JD *aac.%;%

    ,'"a.c"a

    E(('(%

    JV *aa.%;%

    L%n?!a*% a!$na

    De clic enel enlaceJava SE

    http://java.sun.com/http://java.sun.com/http://java.sun.com/javase/downloads/index.jsphttp://java.sun.com/javase/downloads/index.jsphttp://java.sun.com/
  • 8/10/2019 Manual Fundamentos Java

    8/141

    Fundamentos de Java Julio 2008

    E" c!>" !% %" c'((%p'n/$%n&% a "a "&$#a %($

  • 8/10/2019 Manual Fundamentos Java

    9/141

  • 8/10/2019 Manual Fundamentos Java

    10/141

    Fundamentos de Java Julio 2008

    2. En H$n/' % p!%/% $n&a"a( %" %*%c!&a)"% p'( %*%#p"' %n %" /$(%c&'($'

    C:\Archivos de programa\ava\jdk!.6."#"5

    E*%c!&% %" $n&a"a/'( ac%p&% /% p(%%(%nc$a &'/a "a ca(ac&%(&$ca '(%c$/a.

    Ac%p&% "a "$c%nc$a pa(a %""' /% c"$c %n %" )'&

  • 8/10/2019 Manual Fundamentos Java

    11/141

  • 8/10/2019 Manual Fundamentos Java

    12/141

    Fundamentos de Java Julio 2008

    $. )n el di*logo Variables de Entornode+e crear la varia+le Pathusando el+o,n Nueva/ si es 0ue 1a no exis,e.

    )n caso 0ue exis,a la varia+le Pathelija dicha varia+le 1 ed2,ela haciendouso del +o,nModificar.

    $.5 Ahora de+e modificar o ingresar por primera ve3 el valor de la varia+lePath

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.11

    De clicen ste

    botn

  • 8/10/2019 Manual Fundamentos Java

    13/141

    Fundamentos de Java Julio 2008

    4e+e adicionar la ru,a donde se halla el direc,orio +in del 4 0ue hains,alado/ le recomiendo +uscar en: C:\Archivos de programa\ava

    )n la figura de arri+a la ru,a del direc,orio bines:

    C:\Archivos de programa\ava\jdk!.6."#"5\+in

    i en el valor de la varia+le Path1a exis,e un valor/ cpielo al +loc deno,as 7o,epad9 o a un edi,or cual0uiera. &or ejemplo si ,engo el siguien,evalor:

    C:\Archivos de programa\4% Compu,er olu,ions\;l,ra)di,-$(

    u,a an,erior? @ =>u,a del +in del 4 del ava?

    )n el ejemplo ser2a:

    $.6 Ahora de+e pegar el con,enido del edi,or 1 reempla3ar el valor de lavaria+le como se aprecia en la figura de a+ajo:

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.12

  • 8/10/2019 Manual Fundamentos Java

    14/141

    Fundamentos de Java Julio 2008

    $. &ara finali3ar de clic en el +o,nAceptar.

    4. En L$n!; % /%)% $n&a"a("' %n !n /$(%c&'($' c'#' 'usr'java'jdk!.$.!B rpm -ivh jdk-!.$.!.i$86.rpm

    5. Pa(a ca#)$a( %" pa& /%)% (%a"$6a(&ADE'usr'java'jdk!.$.!expor, &AD

    &nstaa)+8n de Net9eans

    &aso !: )n,rar a la p*gina h,,p:''www.ne,+eans.org'1 descargar el ins,alador

  • 8/10/2019 Manual Fundamentos Java

    15/141

    Fundamentos de Java Julio 2008

    &aso (: ;na ve3 descargado e,Feans/ ins,ale el programa.

    iga las ins,rucciones seleccionando el +o,n Nexten ,odos los casos.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.14

  • 8/10/2019 Manual Fundamentos Java

    16/141

    Fundamentos de Java Julio 2008

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.15

    De clic en stebotn para

    personali"ar elinstalador

    De clic en stebotn paracontinuar

  • 8/10/2019 Manual Fundamentos Java

    17/141

    Fundamentos de Java Julio 2008

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.1-

  • 8/10/2019 Manual Fundamentos Java

    18/141

    Fundamentos de Java Julio 2008

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.17

  • 8/10/2019 Manual Fundamentos Java

    19/141

    Fundamentos de Java Julio 2008

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.18

  • 8/10/2019 Manual Fundamentos Java

    20/141

    Fundamentos de Java Julio 2008

    F$na"#%n&% p!%/% (%?$&(a(% !an/' !na c!%n&a /% c'((%' c'#' !!a($'.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.1+

  • 8/10/2019 Manual Fundamentos Java

    21/141

    Fundamentos de Java Julio 2008

    Ca(a)te(*st+)as de un ,(o0(ama Java!

    E" n'#)(% /% "a c"a% /%)% %( $?!a" a" n'#)(% /%" a(c$'.

    S% /%)% (%p%&a( "a #ac!"a #$nc!"a % ca% %n$&$%M.

    E" n'#)(% /%" a(c$' &$%n% %;&%n$esponda 0ue si: de clic en el +o,n Si.

    &aso $:

  • 8/10/2019 Manual Fundamentos Java

    22/141

    Fundamentos de Java Julio 2008

    cmd

    H presione la ,ecla I)n,erJ. )n el 4O en,re al direc,orio de curso/ paraello:

    !.!. 4igi,e: C: 1 presione la ,ecla I)n,erJ.!.(. 4igi,e: C4 Curso#ava 1 presione la ,ecla I)n,erJ.

    !.$. Compile el programa use el programa $avac.exe/ para ello digi,e

    C:\Curso#ava?javac Dola.javaH presione la ,ecla I)n,erJ.

    2. Pa(a %*%c!&a( %" p('?(a#a a c'#p$"a/' %!/' c'#p$"a/' %n )&%c'/% % !a %" 1ava!ee! E" c

  • 8/10/2019 Manual Fundamentos Java

    23/141

    Fundamentos de Java Julio 2008

    El J"E es suciente para un usuario de aplicaciones *ec*as en Java. Peor si laaplicacin es -e%, dic*o usuario ya no lo necesita.

    J%E ' J() * A+, de Java

    El JDK es necesario para quienes desarrollan aplicaciones en Java ya seanaplicaciones cliente servidor o aplicaciones distri%uidas incluyendo a lasaplicaciones -e%.

    JD# ' J%E * +aquete de desarrollo de aplicaciones de Java

    L' !% !&%/ n%c%$&a a)%( % !% pa(a ca/a $&%#a 'p%(a&$' ' p"a&a'(#a 'p%(a&$a %;$&% !n JD p'( c'n$?!$%n&% !n JRE ap('p$a/' p'( "' !% /%)% /%ca(?a(% %" !% c'((%p'n/% a ! $&%#a'p%(a&$' p(%%($/'.

    La )!%na n'&$c$a % !% %" p('?(a#a !% !&%/ /%a(('""% p'( %*%#p"' %n H$n/' "!%?' c'#p$"a/'&a#)$n %n H$n/' p!%/% c'((%( %n L$n!; ' %n Un$; %&c. $n #a'(% p(')"%#a a"' !% !&%/ aa

    p!%&' $n&(!cc$'n% pa(&$c!"a(% pa(a %" $&%#a 'p%(a&$' %n %" !% a /%a(('""a/' "' p('?(a#a.P'( %' "% !?%($#' n' a"$(% /% "' %&>n/a(% $#p!%&' p'( Jaa %n %" c!(' "% a!/a(%#' a n'a"$(% /% "' #$#'.

    H($&% 'nc% an/ (!n %%(%(%M %c($)a !na %6 ! p('?(a#a %*%c!&% /'n/% !$%(a $n ca#)$'.

    '!'!?! E (e)oe)to( de .asu(a =Ga(.a0e Coe)to(>

    E" c'nc%p&' /% (%c'"%cc$&$ca $n "a$n&%(%nc$ %" c'#p$"a/'( c'"a)'(a pa(a !% %a p'$)"% ""%a( !na c!%n&a /% &'/a "a (%%(%nc$a !%%;$&%n a !n /%&%(#$na/' %pac$' /% #%#'($a (%%(a/'.

    C!an/' % $n'ca %" (%c'"%c&'( /% )a!(a (%c'((% "a "$&a /% %pac$' (%%(a/' ')%(an/' %"c'n&a/'( /% (%%(%nc$a /% ca/a %pac$'. S$ !n c'n&a/'( a ""%?a/' a c%(' $?n$$ca !% %% %pac$' /%#%#'($a a n' % !a p'( &an&' p!%/% %( "$)%(a/'.

    E" n$c' $nc'n%n$%n&% a %&% #%can$#' % /%&%(#$na( c!>n/' % &$%n% !% %*%c!&a( %" (%c'"%c&'( /%)a!(a. E;$&%n a($' a"?'($' pa(a ac%("' p%(' %" #> %$c$%n&% % %" p($#%(' /% %""'

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.22

  • 8/10/2019 Manual Fundamentos Java

    24/141

    Fundamentos de Java Julio 2008

    Ep%(a( a !% n' !%/% #%#'($a "$)(% %n&'nc% %*%c!&a( %" (%c'"%c&'( /% )a!(a. F$*a( !n !#)(a" /% 'c!pac$$ca /% a"#ac%na#$%n&'.2. En Jaa /%)% %( /%c"a(a/a an&% /% !&$"$6a(%.3. Ca/a a($a)"% &$%n% !n &$p' !n $/%n&$$ca/'(.4. E !n n'#)(% $#)

  • 8/10/2019 Manual Fundamentos Java

    25/141

    Fundamentos de Java Julio 2008

    Co((e)to 6asa.e &n)o((e)to

    costo cos,o#,em cos,oBi,em

    costoItem #cos,o,em class

    costoItem2 cos,o,emfac,urado (cos,o,em

    costoItemFacturado cos,oi,em cos,o-i,em

    T+,os de #a(+a.es

    1. L' p($nc$pa"% &$p' /% a($a)"% 'nin, D%/% :231 a&a @231long D%/% :2-3 a&a @2-3floa, E !n n!#%(' /%c$#a" /% 32 )$&.dou+le E !n n!#%(' /%c$#a" /% -4 )$&.char E !n '"' ca(>c&%( c'#' "%&(a ' /$?$&' ' ca(>c&%( %p%c$a".+oolean A"#ac%na a"'(% /% %(/a/ c'#' ,rue' false.

    2. La ca/%na n' 'n !n &$p' /% a($a)"% $n' !na C"a% /% &$p' S&($n?

    ,ring Ca/%na /% ca(ac&%(%.

    De)a(a)+8n de #a(+a.es1. La '(#a )>$ca /% /%c"a(a( a($a)"% %

    ,ipo iden,ificador E valor@

    2. La a($a)"% /% $n&anc$a % p!%/%n !a( %n c!a"!$%( "!?a( /% "a c"a%.3. La a($a)"% "'ca"% % p!%/%n !a( '"' %n %" >#)$&' /'n/% 'n /%c"a(a/'.E1e()+)+oC:\java?no,epad Qaria+les.javapu+lic class Qaria+les L

    'K Qaria+les ins,ancia K'pu+lic s,a,ic in, peliculasAl0uilados E "@

    pu+lic s,a,ic void main7,ringIJ args9 L

    'K Qaria+les locales K'dou+le ,asa4en,eres E ".!5@in, peliculas)n,ock E 5"@in, numero4e4ias E $@char ca,egoria4e&elicula E RSR@1s,em.ou,.prin,ln7peliculasAl0uilados9@1s,em.ou,.prin,ln7,asa4en,eres9@1s,em.ou,.prin,ln7peliculas)n,ock9@1s,em.ou,.prin,ln7numero4e4ias9@1s,em.ou,.prin,ln7ca,egoria4e&elicula9@

    NNCompilacin:

    C:\java?javac Qaria+les.java

    )jecucin:

    C:\java?java Qaria+les

    >esul,ado:

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.24

  • 8/10/2019 Manual Fundamentos Java

    26/141

    Fundamentos de Java Julio 2008

    "".!55"$S

    1.3. OPERADORES

    '!7!'! O,e(ado( de as+0na)+8n1. La %;p(%$ "'n?.+1,e +! E !/ +( E (/ +$@+$ E +! T +( '' error el resul,ado es en,ero

    '!7!7! O,e(ado(es &n)(emento 5 De)(emento1. E" 'p%(a/'( @@ $nc(%#%n&a %n 1 "a a($a)"% !% ac'#paa.

    2. E" 'p%(a/'( : : /%c(%#%n&a %n 1 "a a($a)"% !% ac'#paa.in, var! E $@var! TT@in, var! E $/ var( E "@var( E TTvar!@ '' e incremen,a var! 1 luego se asigna a var(@var( E var!TT@ '' e asigna a var( 1 luego se incremen,a var(@in, no,a E !/ pendien,es E !"@no,aTT@ '' es idWn,ico a no,a E no,a T !@pendien,es--@ '' es idWn,ico a pendien,es E pendien,es - !@

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.25

  • 8/10/2019 Manual Fundamentos Java

    27/141

    Fundamentos de Java Julio 2008

    '!7!;! O,e(ado(es de Com,a(a)+8n1. S'n (%"ac$'n% /% $?!a"/a/ /%$?!a"/a/.2. S% /%)% /$%(%nc$a( %" 'p%(a/'( /% c'#pa(ac$

  • 8/10/2019 Manual Fundamentos Java

    28/141

    Fundamentos de Java Julio 2008

    '!7!! O,e(ado(es )on Cadenas!1. A "a c'"%cc$

  • 8/10/2019 Manual Fundamentos Java

    29/141

    Fundamentos de Java Julio 2008

    E1e()+)+o 2!'K )jercicio:K e pide calcular el cos,o del al0uiler de dos peliculasK por dos ( dias.K Odisea (""! E (.P5 por diaK )l padrino E $.5" por dia

    K mpues,o E !UKK &ero solo se ,iene un +ille,e de !".K e pueden al0uilar]K'pu+lic class Operadores L

    pu+lic s,a,ic void main7,ringIJ args9 L

    '' 4eclaracion de varia+les dou+le pelicula!@

    dou+le pelicula(@

    '' Asignacion de valores pelicula! E (.P5@ pelicula( E $.5"@

    '' )s,as sen,encias pueden ser com+inadas en una sola: '' dou+le pelicula! E (.P5/ pelicula( E $.5"@

    '' O,ras varia+les a usar en es,e programa in, numero4e4ias E (@ +oolean al0uilar@ dou+le ,o,alAl0uiler/ ,o,al/ porcen,ajempues,o E !.!@

    '' %ues,ra el precio de los dos peliculas 1s,em.ou,.prin,ln7MOdisea (""! : M T pelicula!9@

    1s,em.ou,.prin,ln7M)l &adrino : M T pelicula(9@

    '' Calcula el al0uiler ,o,al ,o,alAl0uiler Epelicula!Knumero4e4ias T pelicula(Knumero4e4ias@ 1s,em.ou,.prin,ln7Mo,al Al0uiler E M T ,o,alAl0uiler9@

    '' Calcula el ,o,al de la ven,a aplicando el impues,o ,o,al E ,o,alAl0uilerKporcen,ajempues,o@ 1s,em.ou,.prin,ln7Mo,al Qen,a E M T ,o,al9@

    '' Qerifica si se pueden al0uilar al0uilar E ,o,al = !"@ 1s,em.ou,.prin,ln7M&uedo Al0uilar] M T al0uilar9@

    N

    NC:\java?javac Operadores.javaC:\java?java OperadoresOdisea (""! : (.P5)l &adrino : $.5o,al Al0uiler E !(.Po,al Qen,a E !5."P$&uedo Al0uilar] false

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.28

  • 8/10/2019 Manual Fundamentos Java

    30/141

    Fundamentos de Java Julio 2008

    1.4. CONTROL DE FLUJO

    '!;!' 9o/ues en JavaE" c

  • 8/10/2019 Manual Fundamentos Java

    31/141

    Fundamentos de Java Julio 2008

    '!;!7! &F an+dadosC!an/' % (%!$%(%n #!ca c'n/$c$'n% % p!%/%n an$/a( %n&%nc$a IF.D%)% &%n%( c!$/a/' %n %" c'((%c&' !' /% "a %n&%nc$a ELSEif 7velocidad ?E $"9

    if 7velocidad ? !""9

    1s,em.ou,.prin,ln7MQamos mu1 rapidoM9@else

    1s,em.ou,.prin,ln7M

  • 8/10/2019 Manual Fundamentos Java

    32/141

    Fundamentos de Java Julio 2008

    '!;!?! E o,e(ado( )ond+)+ona =:>E !na a"&%(na&$a a "a %&(!c&!(a $..%"%if 7mes =E 9

    impues,o E ".!8@else

    impues,o E ".!P@E !na %;p(%$

  • 8/10/2019 Manual Fundamentos Java

    33/141

    Fundamentos de Java Julio 2008

    prin,f7M)s una vocalM9@ +reak@ defaul,: prin,f7M)s una consonan,eM9@N

    '!;!! EJERC&C&OSE1e()+)+o ''' ^ue es la )dad]pu+lic class )dad L pu+lic s,a,ic void main 7,ring IJ arg9 L in, edad E !5@ if 7edad =E !89 1s,em.ou,.prin,ln 7M)res un ni_oM9@ 1s,em.ou,.prin,ln 7M

  • 8/10/2019 Manual Fundamentos Java

    34/141

    Fundamentos de Java Julio 2008

    E1e()+)+o ;;n o+rero necesi,a calcular su salario semanal/ el cual se o+,iene de lasiguien,e manera:i ,ra+aja " horas o menos se le paga b!6 por horai ,ra+aja mas de " horas se le paga b!6 por cada una de las primeras "horas 1 b(" por cada hora ex,ra.

    C:\java?no,epad alario.javapu+lic class alario L

    pu+lic s,a,ic void main7,ringIJ args9 L

    in, horasra+ajadas/ horas)x,ras/ salarioemanal@

    horasra+ajadas E @

    if 7 horasra+ajadas ? " 9 Lhoras)x,ras E horasra+ajadas - "@salarioemanal E horas)x,ras K (" T " K !6@1s,em.ou,.prin,ln7M)l salario con horas ex,ras es de M T

    salarioemanal9@N

    else Lsalarioemanal E horasra+ajadas K !6@1s,em.ou,.prin,ln7Mu sueldo es de M T salarioemanal9@

    N NN

    E1e()+)+o ?'' ;n a_o es +isies,o si es divisi+le por '' excep,o a0uellos divisi+les por !"" pero no por ""

    '' egn el a_o de,ermine la can,idad de dias de un mes.''pu+lic class %es L pu+lic s,a,ic void main 7,ring IJ arg9 L in, anio E !P8@ in, mes E "(@

    in, dias@...

    1s,em.ou,.prin,ln 7Miene MTdiasTM diasM9@ NN

    1.5. LOS CICLOS REPETITIVOS

    '!?!'! &LEE" $"% % "a '(#a #a $#p"% /% !n )!c"%.T$%n% "a $?!$%n&% '(#a

    in, i E !@ '' iniciali3acionwhile 7i=E!"9 L '' condicion de repe,icion 1s,em.ou,.prin,ln7iK$.59@ '' cuerpo

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.33

  • 8/10/2019 Manual Fundamentos Java

    35/141

    Fundamentos de Java Julio 2008

    iTT@ '' i,eracionN

    E" c!%(p' % (%a"$6a(a #$%n&(a "a c'n/$c$

  • 8/10/2019 Manual Fundamentos Java

    36/141

    Fundamentos de Java Julio 2008

    '!?!?! LA SENTENC&A 9REAHEn &'/' )!c"% "a %n&%nc$a BREA &(an$%(% %" c'n&('" !%(a /%" )!c"%. S'n n%c%a($a c!an/' % &(a&a/% )!c"% $n$n$&'.EJEM6LO

    Un %#p"%a/' a ""%?a/' a ! %/a/ /% *!)$"ac$"a can&$/a/ /% /$n%(' !% %&a p%('na &%n/(> a" ca)' /% !n a' $ &'/' %" /$n%(' "' (%$n$%(&%[.pu+lic class n,eres L

    pu+lic s,a,ic void main7,ringIJ args9 L

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.35

  • 8/10/2019 Manual Fundamentos Java

    37/141

    Fundamentos de Java Julio 2008

    dou+le dinero E !"""@ in, mes E !@

    while 7mes=E!(9 L dinero E dinero K !."(@ mesTT@

    N 1s,em.ou,.prin,ln7dinero9@ N

    N

    E1e()+)+o 7S$#!"a( %" c'#p'(&a#$%n&' /% !n (%"'* /$?$&a" $#p($#$%n/' "a '(a #$n!&' %?!n/' /% !n /a /%/%"a 000000 '(a a&a "a 235+5+ '(apu+lic class >eloj L

    pu+lic s,a,ic void main7,ringIJ args9 L

    for 7in, hE"@ h =E ($@ hTT9for 7in, mE"@ m =E 5P@ mTT9

    for 7in, sE"@ s =E 5P@ sTT91s,em.ou,.prin,ln7h TMh MT m TMm MT sTMsM9@

    NN

    E1e()+)+o ;Una p%('na /%%a $n%(&$( ]1000.00 %n !n )anc' %" c!a" "% '&'(?a !n 2= /% $n&%( #%n!a". Enc!an&' #%% &%n/(> #a /% ]1500 $ (%$n$%(&% ca/a #% &'/' ! /$n%('[.pu+lic class 4inero L

    pu+lic s,a,ic void main7,ringIJ args9 L

    dou+le dinero E !"""@ in, mes E !@

    for 7@@9 L dinero E dinero K !."(@

    if 7dinero ?E !5""9 +reak@ mesTT@ N 1s,em.ou,.prin,ln7mes9@ 1s,em.ou,.prin,ln7dinero9@ NN

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.3-

  • 8/10/2019 Manual Fundamentos Java

    38/141

    Fundamentos de Java Julio 2008

    Tema 2. PRINCIPIOS DE LA ORIENTACION A OBJETOS

    Resumen

    Se estudiara el paradigma de la orientaci"n a objetos y como se emplea en Java!

    2.1. DEFINICION DE OBJETO.

    2!'!'! Un nuevo ,a(ad+0maOO % !n n!%' pa(a/$?#a /% /$%' p('?(a#ac$

  • 8/10/2019 Manual Fundamentos Java

    39/141

    Fundamentos de Java Julio 2008

    =tri"ut!s7 +!n$itudF Marca.

    2.2. Encap!"a#$ent%

    l encapsulamient! !culta c!m! las c!sas ?unci!nan dentr! de un !"et!

    0!l! n!s c!municam!s c!n el !"et! a trav's sus m't!d!s+!s m't!d!s s!n una inter?aE ue permite i$n!rar c!m! est@n implementad!s.

    l caer! encapsula t!das las !peraci!nes a l!s taretaha"ientes.vadir este encapsulamient! es un r!"! al caer!.

    ercici!C!mplete c!n !peraci!nes atri"ut!s l! si$uiente7

    Objeto Operaciones Atributos

    Caer! aut!m@tic! P5;niversidad

    C!mputad!ra

    =ut! de carreras

    *V*

    0at'lite

    2.3. Re"ac$%ne ent&e %'(et%

    Mensaes entre !"et!s.

    +!s !"et!s se c!munican un!s c!n !tr!s enviand! mensaes.

    l trasmis!r del mensae pide ue el recept!r realice una !peraci&n.l recept!r eecuta el m't!d! c!rresp!ndiente.

    n pr!$ramaci&n estructurada se inv!can ?unci!nes ! pr!cedimient!s.

    n %% se enva un mensae a un !"et! antes ue inv!carse un pr!cedimient!.+!s m't!d!s presentan p!lim!r?ism!.

    Cliente

    !

    9ransmis!r

    Mensae

    $etdad()

    Pers!na

    $etdad

    $et

    dad

    sta visi"ilidad se da a trav's de enlaces.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.38

  • 8/10/2019 Manual Fundamentos Java

    40/141

    Fundamentos de Java Julio 2008

    ;n !"et! enva mensaes a !tr! inv!cand! sus m't!d!s.

    /adar

    en 9ierra

  • 8/10/2019 Manual Fundamentos Java

    41/141

    Fundamentos de Java Julio 2008

    +apicer! r!!

    Escri%ir"ecargar

    Cantidad de tintaC!l!r de tinta

    Pluma tinta

    scri"ir/ecar$ar

    Cantidad de tintaC!l!r de tinta

    E(e&c$c$%

    = ue clase pertenecen est!s d!s !"et!s

    Clases y Objetos.

    +as clases s!n de?inici!nes est@ticas ue n!s permite entender t!d!s l!s !"et!s de esa clase.

    +!s !"et!s s!n entidades din@micas ue eAisten en el mund! real en simulaci!nes del mund!

    real.

    2.5. )e&enc$a

    ntre di?erentes clases pueden ha"er similitudes

    +a herencia es una relaci&n entre clases d!nde una es padre de !tra.

    +as pr!piedades c!munes de?inen la superclase. Clase padre.+as su"clases heredan estas pr!piedades. Clase hi!.

    ;n !"et! hi! es unGtip!Gde una superclase.

    ;n :elic&pter! es un tip! de

  • 8/10/2019 Manual Fundamentos Java

    42/141

    Fundamentos de Java Julio 2008

    nternamente cada !peraci&n se realiEa de di?erente ?!rma.

    ="!rdar pasaer!s

    arc! 9ren :elic&pter!

    E1em,osnviar calcularntereses a !"et!s c!m!7 Cuenta de =h!rr!sF Cuenta C90F Cuenta C!rriente.n ava se representa c!m!7 cuen,a.calcularn,ereses79@

    E1e()+)+o*etermine las clasesF m't!d!sF atri"ut!s as!ciaci!nes del si$uiente pr!"lema. Puede aplicar

    herencia ! p!lim!r?ism!

    9ac!ra ilms esta en el ne$!ci! de aluiler de pelculas a sus clientes. H ah!ra estaaut!matiEand! el pr!ces! de aluiler. l cliente esc!$e las pelculas en la tienda las lleva a la

    caa para pr!ceder c!n el aluiler. l emplead! de la tienda s!licita la 9ac!raCard al cliente para

    identi?icarl! escanea el c&di$! de "arras de cada pelcula ue esta aluiland!.

    +!s clientes tienen ue ser s!ci!s de 9ac!ra ilm Clu" para p!der aluilar pelculas. =l

    suscri"irse al clu" entre$an dat!s c!m! n!m"reF direcci&nF tel'?!n!. 9ac!raCard tiene un Bnic!nBmer! impres! ue identi?ica al cliente.

    Cada aluiler tiene un nBmer! Bnic! para identi?icarl! en el acuerd! se indica la ?echa de inici!del aluiler la lista de pelculas ue se est@n aluiland!.

    pelculas.

    Cada artcul! tiene un preci! de aluilerF nBmer! de das ue puede ser aluilad!F el titul! de lapelculaF una descripci&n "reveF el tip! de pelcula (amiliarF =cci&nF C!media...)

    2.,. CLASES EN JAVA

    ;na clase es un m!lde para crear mBltiples !"et!s ue encapsula dat!s c!mp!rtamient!.

    2!!'! 6a/uetes;n pauete es un c!ntened!r (a$rupad!r) de clases ue est@n relaci!nadas l&$icamente.

    ;n pauete tiene sus clases en un mism! direct!ri!Varias clases pueden tener el mism! n!m"re per! en di?erente pauete.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.41

  • 8/10/2019 Manual Fundamentos Java

    43/141

  • 8/10/2019 Manual Fundamentos Java

    44/141

    Fundamentos de Java Julio 2008

    2.+!s !"et!s se crean c!n el !perad!r ne.&elicula pelicula! E new &elicula79@&elicula pelicula( E new &elicula79@

    3.l !perad!r ne realiEa las si$uientes acci!nes7

    G 0epara mem!ria para el nuev! !"et!G nv!ca el m't!d! de inici! de la clase llamad! c!nstruct!r.

    G /et!rna la re?erencia a un nuev! !"et!.

    &elicula pelicula! E

    new&elicula79@

    pelicula1

    +as varia"les primitivas

    almacenan val!res.

    +!s !"et!s almacenan re?erencias

    int i4

    i

    Pelicul

    a

    pelicul

    a1

    pelicul

    a1

    int j 0 54

    Pelicula pelicula2 Kp%"$c!"a2

    2!!;! La (e4e(en)+a nu

    6 7os o%jetos inician en nullG 0e puede c!mparar un

    !"et! c!n null6 8e puede li%erar la re&erenciacon null.

    &elicula pelicula! E null@if 7pelicula! EE null9pelicula! E new &elicula79@

    pelicula! E null@

    2!!?! As+0nando (e4e(en)+as0e puede asi$nar una varia"le re?erencia a !tra resultad! en d!s re?erencias al mism! !"et!.&elicula pelicula! E new &elicula7MFe,,1 FlueM9@

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.43

    +a 0trada

    *rama

    nu

    ll

    3*ias de /adi!

  • 8/10/2019 Manual Fundamentos Java

    45/141

    Fundamentos de Java Julio 2008

    &el2cula pelicula( E pelicula!@

    6. +as varia"les de instancia se declaran en la clase. st!s s!n atri"ut!s de la clase.pu+lic class &elicula L

    pu+lic ,ring ,i,ulo@pu+lic ,ring ,ipo@

    N

    ,. +as varia"les pu"licas de instancia se acceden c!n el !perad!r punt!.&elicula pelicula! E new &elicula79@pelicula!.,i,ulo E Mramer vs ramerM@if 7pelicula!.,i,ulo.e0uals7M)l plane,a de los simiosM9

    pelicula!.,ipo E MCiencia `iccionM@

    2.-. La'%&at%&$%. U% e O'(et%

    C!mplete realice el si$uiente pr!$rama.

    &elicula.javapu+lic class &elicula L

    pu+lic ,ring ,i,ulo@pu+lic ,ring ,ipo@

    N

    &rue+a&eliculas.java

    pu+lic class &rue+a&eliculas L pu+lic s,a,ic void main 7,ringIJ args9 L &elicula pelicula!/ pelicula(@

    ... pelicula!.,i,ulo E Me,orno nom+re%e,odo 7

  • 8/10/2019 Manual Fundamentos Java

    46/141

    Fundamentos de Java Julio 2008

    2!!'! A(0umentosn la de?inici&n del m't!d! se indica el tip! el n!m"re de l!s ar$ument!s del m't!d!.pu+lic void se,ipo 7,ring nuevoipo9 L

    ,ipo E nuevoipo@

    NS$ %" #&'/' &$%n% a($' a(?!#%n&' %&' % %pa(an p'( c'#a.pu+lic void se,4a,os 7,ring nuevoi,ulo/ ,ring nuevoipo9 L

    ,ipo E nuevoipo@,i,ulo E nuevoi,ulo@

    N

    0i el m't!d! n! tiene ar$ument!sF se dea s!l! l!s par'ntesispu+lic void mos,rar4e,alles79 L

    1s,em.ou,.prin,ln7M)l ,i,ulo es MT,i,ulo9@

    1s,em.ou,.prin,ln7M)l ,ipo es MT,ipo9@N

    2!!2! #ao(es de (eto(no!Se aplica slo a las funcionesm@s n! a l!s pr!cedimient!s (para est!s Bltim!s se usa v!id).0e usa la sentencia returnpara salir del m't!d! ret!rnand! un val!r.

    pu+lic class pelicula L

    priva,e ,ring ,ipo@

    ''...pu+lic ,ring o+,eneripo 79 L '' es una funcin

    re,urn ,ipo@N

    N

    2!!7! Re)u(s+v+dad;n m't!d! recursiv! es auel ue directa ! indirectamente se llama a si mism!.

    C!m! eempl! Btil se puede presentar el c@lcul! de ?act!rial sumat!rias

    act!rial de K 1act!rial de < K < L act!rial de < G 1

    0umat!ria de K

    0umat!ria de < K < 0umat!ria de < G 1

    ;n m't!d! recursiv! de"e tener al men!s un cas! n! recursiv! !tr!s cas!s recursiv!s ue se

    apr!Aimen al cas! n! recursiv! para evitar la recursi&n in?inita.>ecursion.java

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.45

  • 8/10/2019 Manual Fundamentos Java

    47/141

  • 8/10/2019 Manual Fundamentos Java

    48/141

  • 8/10/2019 Manual Fundamentos Java

    49/141

    Fundamentos de Java Julio 2008

    La.o(ato(+o9estPrimitivas.avapu+lic class es,&rimi,ivas L

    pu+lic s,a,ic void main 7,ringIJ args9L

    in, numero E !5"@ un%e,odo7numero9@ 1s,em.ou,.prin,ln7numero9@Npriva,e s,a,ic void un%e,odo7in, argumen,o9 L if 7argumen,o = " YY argumen,o ? !""9 L argumen,o E "@ 1s,em.ou,.prin,ln7argumen,o9@ NN

    NDue val!res muestra el pr!$rama anteri!r

    2. Cuand! se pasa c!m! ar$ument! un !"et! re?erenciaF n! se $enera c!pia. l ar$ument!re?erencia al !"et! !ri$inal.

    La.o(ato(+o

    9est/e?erencias.avapu+lic class es,>eferencias Lpu+lic s,a,ic void main 7,ringIJ args9L

    &elicula pelicula! E new &elicula79@ pelicula!.se,i,ulo7M)l >esplandorM9@ pelicula!.se,ipo7M4ramaM9@ un%e,odo7pelicula!9@ 1s,em.ou,.prin,ln7pelicula!.ge,ipo799@Npu+lic s,a,ic void un%e,odo7&elicula referencia9 L

    referencia.se,ipo7MerrorM9@N

    N

    Due muestra el pr!$rama

    E1e()+)+o

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.48

  • 8/10/2019 Manual Fundamentos Java

    50/141

    Fundamentos de Java Julio 2008

    1. Cree la clase Clien,ec!n l!s atri"ut!s c&di$!F n!m"reF direcci&nF tel'?!n! encapsulad!s

    (m't!d!s set $et).

    2. =$re$ue a la clase Cliente el m't!d! ,o,ringue muestre en pantalla t!d!s l!s dat!s de la

    clase Cliente.3. Cree la clase Pelicula c!n l!s atri"ut!s c&di$!F titul!F tip!F preci! de aluiler. nclua el

    m't!d! ,o,ring.4. Cree un pr!$rama c!m! acora`ilms.java cree c!m! !"et!s a d!s clientes c!n dat!s

    de sus ?amiliares. (cliente1 cliente2)

    5. =$re$ue al pr!$rama principal !"et!s de d!s pelculas ue haa vist! recientemente.

    (pelicula1F pelicula2)-. A" $na" /%" p('?(a#a c'"'!% "' $?!$%n&%1s,em.ou,.prin,ln7clien,e!9@1s,em.ou,.prin,ln7clien,e(9@1s,em.ou,.prin,ln7pelicula!9@1s,em.ou,.prin,ln7pelicula(9@

    Due muestra el pr!$rama

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.4+

  • 8/10/2019 Manual Fundamentos Java

    51/141

    Fundamentos de Java Julio 2008

    Tema 3. TRABAJANDO CON CLASES

    Resumen

    Se reali#ara un estudio sobre caracter$sticas avan#adas en la deinici"n de clases!

    3.1. DEFINICIONES INICIALES.E" %ncap!"a#$%n&' % )aa %n "' #&'/' /% $n&anc$a.La ')(%ca(?a /% #&'/' n' )($n/a !na $n&%(a% #a "%?$)"%.L' c'n&(!c&'(% a%?!(an !na c'n$&%n&% c(%ac$

  • 8/10/2019 Manual Fundamentos Java

    52/141

    Fundamentos de Java Julio 2008

    7!'!7! Const(u)to(esPa(a !na a/%c!a/a $n$c$ac$

  • 8/10/2019 Manual Fundamentos Java

    53/141

    Fundamentos de Java Julio 2008

    1s,em.ou,.prin,ln7pelicula$.ge,i,ulo79Tpelicula$.ge,ipo799@ NN^!% #!%&(a %" p('?(a#a[

    7!'!;! La (e4e(en)+a t

  • 8/10/2019 Manual Fundamentos Java

    54/141

  • 8/10/2019 Manual Fundamentos Java

    55/141

    Fundamentos de Java Julio 2008

    pu+lic &elicula7,ring ,i,ulo9 L

    ,his.,i,ulo E ,i,ulo@ N pu+lic ,ring ge,i,ulo79 L re,urn ,i,ulo@

    Npu+lic s,a,ic void se,&recio7floa, nuevo&recio9 L

    precio E nuevo&recio@ N pu+lic s,a,ic floa, ge,&recio79 L re,urn precio@ NNes,,a,ic(.javapu+lic class es,,a,ic( L pu+lic s,a,ic void main 7,ringIJ args9 L &elicula.se,&recio7$.P8f9@ &elicula oscar E new &elicula7MFen DurM9@

    1s,em.ou,.prin,ln7oscar.ge,&recio799@ oscar.se,&recio7.P8f9@ 1s,em.ou,.prin,ln7&elicula.ge,&recio799@N

    N

    ^!% (%!"&a/' % ')&$%n%n[

    3.2 EJERCICIOS

    E1e()+)+o '

    C(%% "a c"a% C"$%n&% !% &%n/(> "' $?!$%n&% /a&' c

  • 8/10/2019 Manual Fundamentos Java

    56/141

  • 8/10/2019 Manual Fundamentos Java

    57/141

    Fundamentos de Java Julio 2008

    E1e()+)+o 2

    C(%% "a c"a% V%n/%/'( c'n "' $?!$%n&% a&($)!&' n'#)(% %/a/ %n&a !%"/'F$*'. La c"a% &a#)$nc'n&a(a c'n !n a&($)!&' %&>&$c' pa(a c'n&a( "a can&$/a/ /% %n/%/'(% !% % aan c(%an/'. La c"a%c!%n&a c'n !n c'n&(!c&'( !% (%c$)% n'#)(% %/a/ %n&a !%"/'F$*' c'#' a(?!#%n&'. En %&%c'n&(!c&'( % $nc(%#%n&a(a %" c'n&a/'( /% %n/%/'(% c(%a/'.C'n&a(a c'n !n #&'/' %&>&$c' !% (%&'(na(a "a can&$/a/ ac&!a" /% %n/%/'(% c(%a/' ?%&Can&$/a/.O&(' #&'/' (%&'(na(a %" !%"/' /%" %n/%/'( ?%&S!%"/'. E" !%"/' % %" 0.25= /% "a %n&a #a %"!%"/' $*'.

    A?(%?!% '&(' c'n&(!c&'( c'n /' a(?!#%n&' c'#' n'#)(% %n&a n$ca#%n&%.En %" p('?(a#a Ap"$cac$'nV%n/%/'(.*aa % %nc!%n&(a "' $?!$%n&%...Qendedor vendedorDari E new Qendedor7MDari eldonM/8"""9@Qendedor vendedoralvorE new Qendedor7Malvor DardinM/$"/5"""/!$""9@1s,em.ou,.prin,ln7Qendedor.ge,Can,idad799@1s,em.ou,.prin,ln7vendedorDari.ge,ueldo799@1s,em.ou,.prin,ln7vendedoralvor.ge,ueldo799@...

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.5-

  • 8/10/2019 Manual Fundamentos Java

    58/141

    Fundamentos de Java Julio 2008

    Tema 4. TRABAJANDO CON ARREGLOS

    ResumenSe estudiara el uso de arreglos y cadenas en la soluci"n de problemas en Java!

    4.1. DEFINICION DE ARRELOS

    ;!'!' De4+n+)+8nUn a((%?"' % !na c'"%cc$

  • 8/10/2019 Manual Fundamentos Java

    59/141

    Fundamentos de Java Julio 2008

    C!a" % %" (%!"&a/' "' $?!$%n&% )"'!%.Enc!%n&(% 3 %(('(% %n %" $?!$%n&% c

  • 8/10/2019 Manual Fundamentos Java

    60/141

  • 8/10/2019 Manual Fundamentos Java

    61/141

    Fundamentos de Java Julio 2008

    NN

    4.4. CADENAS.

    ;!;!'! De4+n+)+8n!Una ca/%na % !na %c!%nc$a /% ca(ac&%(%La "$)(%(a S&($n? ' c"a% S&($n? % !a pa(a /%$n$( &'/a "a ca/%na %n Jaa.La ca/%na % /%"$#$&an c'n c'#$""a /')"%.

    ''1s,em.ou,.prin,ln7MDola %undo.M9@,ring camara E MCamaraM@,ring luces E camara TM AccionM@,ring vacio E MM@''

    ;!;!2! Const(u))+on de )adenas!Ta#)$n % p!%/% !a( "a $?!$%n&% $n&a;$ pa(a c'n&(!$( ca/%na.

    '' con una cons,an,e,ring nom+re)mpleado E new ,ring7M>. 4aneel OlivawM9@'' con una cadena vacia,ring inicio E new ,ring79@'' copiando una cadena,ring copia)mpleado E new ,ring7nom+re)mpleado9@'' con un arreglo de charcharIJ vocales E LRaR/ReR/RiR/RoR/RuRN@,ring cadenaQocales E new ,ring7vocales9@

    ;!;!7! Con)atena)+on!Pa(a c'nca&%na( ca/%na p!%/% !a( "' $?!$%n&%

    '' ;sando el operador T1s,em.ou,.prin,ln7M om+re E M T nom+re)mpleado 9@'' &uede conca,enar primi,ivas 1 cadenas.in, edad E ((@1s,em.ou,.prin,ln7M )dad E M T edad 9@'' %edian,e la funcin conca,79,ring nom+re E M)lijah M@,ring apellidos E MFale1 M@

    ,ring nom+reComple,o E nom+re.conca,7apellidos9@

    4.5. OPERACIONES CON CADENAS.

    ;!?!'! Lon0+tud de una )adena!

    ,ring nom+re E MDari eldonM@in, longi,ud E nom+re.leng,h79@

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.-0

  • 8/10/2019 Manual Fundamentos Java

    62/141

    Fundamentos de Java Julio 2008

    ? !!

    ;!?!2! U.+)a( un )a(3)te( med+ante un +nd+)e

    ,ring nom+re E MSladia 4elmarreM@

    char c E nom+re.charA,7"9@? S

    ;!?!7! Et(ae( una su.)adena

    '' "!($568P"!($5,ring nom+re E MFlisseno+iarellaM@'' !($568P"!($56,ring su+Cadena E nom+re.su+s,ring7(/69@? isse

    ;!?!;! Conve(t+( a ma5s)uas o m+ns)uas!

    ,ring ,i,ulo E Megunda `undacionM@,ring ma1usculas E ,i,ulo.,o;pperCase79@,ring minusculas E ,i,ulo.,o

  • 8/10/2019 Manual Fundamentos Java

    63/141

    Fundamentos de Java Julio 2008

    ,ring password E M`SD&;GM@if password.e0ualsgnoreCase7MfgD&;wM9

    1s,em.ou,.prin,ln7MCorrec,oXM9@else

    1s,em.ou,.prin,ln7M)rrorXM9@

    ? Correc,oX

    ;!?!! Com,a(ando (e0+ones de una )adena!

    ,ring url E Mh,,p:''www.uni.edu.peM@if 7url.endsGi,h7M.peM99

    1s,em.ou,.prin,ln7M&agina acionalM9@else

    1s,em.ou,.prin,ln7M&agina )x,ranjeraM9@

    ,ring parame,ro E Mip E !P(.!"".5!.(M@if 7parame,ro.s,ar,sGi,h7MipM99

    1s,em.ou,.prin,ln7Mespues,a AM9@if 7s.e0uals7MQiernesM99

    1s,em.ou,.prin,ln7M>espues,a FM9@? ]'' Flo0ue (

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.-2

  • 8/10/2019 Manual Fundamentos Java

    64/141

    Fundamentos de Java Julio 2008

    in, num! E !($56@1s,em.ou,.prin,ln7,ring.valueOf7num!9.charA,7$99@? ]'' Flo0ue $,ring s! E M#%&(' /% "a "$n%a /% c'#an/'.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.-3

  • 8/10/2019 Manual Fundamentos Java

    65/141

    Fundamentos de Java Julio 2008

    C:\? java )co Dola %undo'' )co.javapackage ejercicios@pu+lic class )co L

    pu+lic s,a,ic void main 7,ring IJ args9 Lif 7args.leng,h XE (9

    1s,em.ou,.prin,ln7M;so: java )co Arg! Arg(M9@else1s,em.ou,.prin,ln7argsI"J T M M T argsI!J9@

    NN

    4.- LABORATORIO

    C(%% "a c"a% C"$%n&% !% &%n/(a "' $?!$%n&% /a&' c'/$?' in, n'#)(% /$(%cc$'n &%"%'n' ,ringLa c"a% /%)% c'n&a( c'n /' c'n&(!c&'(%.Un' $n a(?!#%n&' pa(a a!&'?%n%(a( %" c

  • 8/10/2019 Manual Fundamentos Java

    66/141

    Fundamentos de Java Julio 2008

    nom+re E nuevoom+re@N

    pu+lic void se,4ireccion7,ring nuevo4ireccion9 Ldireccion E nuevo4ireccion@

    N

    pu+lic void se,elefono7,ring nuevoelefono9 L,elefono E nuevoelefono@

    N

    pu+lic in, ge,d79 Lre,urn id@

    N

    pu+lic s,a,ic in, ge,;l,imod79 Lre,urn ul,imod@

    N

    pu+lic ,ring ge,om+re79 L

    re,urn nom+re@N

    pu+lic ,ring ge,4ireccion79 Lre,urn direccion@

    N

    pu+lic ,ring ge,elefono79 Lre,urn ,elefono@

    N

    pu+lic ,ring ,o,ring79L re,urn 7MCodigo : MTidTM MTnom+reTM MTdireccionTM MT,elefono9@

    NN''...&elicula.javapu+lic class &elicula L

    priva,e in, id@priva,e s,a,ic in, ul,imodEP"""@priva,e ,ring ,i,ulo@priva,e ,ring ,ipo@priva,e floa, precio@

    pu+lic &elicula79 L,his.id E ul,imod@ul,imodTT@

    N

    pu+lic &elicula7,ring nuevoi,ulo/,ring nuevoipo9 L,his79@,his.,i,ulo E nuevoi,ulo@,his.,ipo E nuevoipo@

    N

    pu+lic void se,i,ulo7,ring nuevoi,ulo9 L,i,ulo E nuevoi,ulo@

    N

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.-5

  • 8/10/2019 Manual Fundamentos Java

    67/141

    Fundamentos de Java Julio 2008

    pu+lic void se,ipo7,ring nuevoipo9 L,ipo E nuevoipo@

    N

    pu+lic void se,&recio7floa, nuevo&recio9 Lprecio E nuevo&recio@

    N

    pu+lic ,ring ge,i,ulo79 Lre,urn ,i,ulo@

    N

    pu+lic ,ring ge,ipo79 Lre,urn ,ipo@

    N

    pu+lic in, ge,d79 Lre,urn id@

    N

    pu+lic floa, ge,&recio79 Lre,urn id@

    N

    pu+lic s,a,ic in, ge,;l,imod79 Lre,urn ul,imod@

    N

    pu+lic ,ring ,o,ring79 Lre,urn 7MCodigo : MTidTM MT,i,uloTM MT,ipo9@

    N

    N

    D%$na "a c"a% Ba%D%Da&' c'n &(% #&'/' %n %" p($#%(' c(%a(a 4 c"$%n&% n'#)(% a#$"$a(% -p%"$c!"a !% aa $&' %n c$n% ' &%"%$$

  • 8/10/2019 Manual Fundamentos Java

    68/141

    Fundamentos de Java Julio 2008

    N

    pu+lic s,a,ic &elicula ge,&elicula7in, id9 ...

    N

    C(%% "a ap"$cac$

  • 8/10/2019 Manual Fundamentos Java

    69/141

    Fundamentos de Java Julio 2008

    floa, impor,e E "@ for 7in, i E "@...9 L if 7peliculaIiJ.ge,Clien,e79.ge,d79 EE clien,e.ge,d799 L impor,e TE peliculaIiJ.ge,&recio79@ N N

    re,urn impor,e@

    NN

    acoraArreglos.javapackage ,acora@pu+lic class acoraArreglos L pu+lic s,a,ic void main 7,ringIJ args9 L

    in, clien,ed@ in, peliculad!@ in, peliculad(@ in, peliculad$@

    if 7args.leng,h XE 9

    1s,em.ou,.prin,ln7Mjava acoraArreglos (""( P""! P""( P""$M9@else L clien,ed E argsI"J@ peliculad!E argsI!J@ peliculad(E argsI(J@ peliculad$E argsI$J@

    NFase4e4a,os +d E new Fase4e4a,os79@

    Clien,e clien,e E +d.ge,Clien,e7clien,ed9@&elicula pelicula! E +d.ge,&elicula7peliculad!9@

    pelicula!.se,Clien,e7clien,e9@&elicula pelicula( E +d.ge,&elicula7peliculad(9@pelicula(.se,Clien,e7clien,e9@+d.ge,&elicula7peliculad$9.se,Clien,e7clien,e9@

    1s,em.ou,.prin,ln7clien,e9@ 1s,em.ou,.prin,ln7pelicula!9@ 1s,em.ou,.prin,ln7pelicula(9@ 1s,em.ou,.prin,ln7+d.ge,&elicula7peliculad$99@

    1s,em.ou,.prin,ln7+d.ge,mpor,e7clien,e99@ NN

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.-8

  • 8/10/2019 Manual Fundamentos Java

    70/141

    Fundamentos de Java Julio 2008

    Tema 5. HERENCIA Y POLIMORFISMO

    ResumenSe estudiara el uso de la %erencia y el polimorismo en el reuso de clases!

    5.1. )ERENCIA

    ?!'!' De4+n+)+8n

    P%(#$&% a !na c"a% c'#pa(&$( "a #$#a %&(!c&!(a /% /a&' c'#p'(&a#$%n&' /% '&(a c"a%.La %(%nc$a #$n$#$6a "a n%c%$/a/ /% /!p"$ca( c

  • 8/10/2019 Manual Fundamentos Java

    71/141

    Fundamentos de Java Julio 2008

    &elicula pelicula E new &elicula 79@'' nicia varia+les de la clase ,em. Cons,ruc,or por defec,o.'' nicia varia+les de la clase &elicula. Cons,ruc,or por defec,o.

    D%$na "a !)c"a% L$)(' E!$p'.

    C'#' /%c"a(a(a "a c"a%

    ,'#)(% W ,'#n$/' W P($#a&% W P"ac%n&a($'P%((' W Can$n' W Ca(n$'(' W P"ac%n&a($'P"ac%n&a($' W a#%(' W V%(&%)(a/' W An$#a" W S%( V$'.

    ?!'!7! La (e4e(en)+a su,e(

    S% (%$%(% a "a c"a% pa/(%S% !a pa(a $n'ca( c'n&(!c&'(% /% "a c"a% pa/(%D%)% %( "a p($#%(a %n&%nc$a /%" c'n&(!c&'( /% "a c"a% $*'E&a (%%(%nc$a &a#)$n % !a pa(a $n'ca( c!a"!$%( #&'/' /%" pa/(%.

    pu+lic class ,em Lpro,ec,ed floa, precio E "@

    ,em 7floa, precio9 L,his.precio E precio@

    NN

    pu+lic class &elicula ex,ends ,em Lpriva,e ,ring ,i,ulo E MM@

    &elicula 7floa, precio/ ,ring ,i,ulo9 Lsuper7precio9@,his.,i,ulo E ,i,ulo@

    NN

    ?!'!;! MBtodosLa !p%(c"a% /%$n% "' #&'/' pa(a &'/a "a !)c"a%.La !)c"a% p!%/% %p%c$$ca( #&'/' p('p$'.

    ,em".javapu+lic class ,em" L pro,ec,ed floa, precio E "@

    ,em" 7floa, precio9 L ,his.precio E precio@ N

    pu+lic floa, ge,&recio79 L re,urn precio@

    NN

    &elicula".javapu+lic class &elicula" ex,ends ,em"L priva,e ,ring ,i,ulo E MM@

    &elicula" 7floa, precio/ ,ring ,i,ulo9 L super7precio9@ ,his.,i,ulo E ,i,ulo@

    N pu+lic ,ring ge,i,ulo79

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.70

  • 8/10/2019 Manual Fundamentos Java

    72/141

  • 8/10/2019 Manual Fundamentos Java

    73/141

    Fundamentos de Java Julio 2008

    ,em(.javapu+lic class ,em( L pu+lic floa, calcularmpor,e7in, clien,e9 L re,urn 5"@ NN

    )0uipo(.javapu+lic class )0uipo( ex,ends ,em( L pu+lic floa, calcularmpor,e7in, clien,e9 L floa, seguro)0uipo E (5@ floa, al0uiler E super.calcularmpor,e7clien,e9@ re,urn seguro)0uipo T al0uiler@ NN

    es,uper(.javapu+lic class es,uper( L pu+lic s,a,ic void main 7,ringIJ args9 L

    ,em( ar,iculo E new ,em(79@ 1s,em.ou,.prin,ln7 ar,iculo.calcularmpor,e75PP9 9@

    )0uipo( vhs E new )0uipo(79@1s,em.ou,.prin,ln7 vhs.calcularmpor,e75PP9 9@

    N

    N

    5.2. P%"$#%&+$#%

    P%(#$&% %%c&!a( !na #$#a 'p%(ac$

  • 8/10/2019 Manual Fundamentos Java

    74/141

    Fundamentos de Java Julio 2008

    &elicula$.javapu+lic class &elicula$ ex,ends ,em$ L pro,ec,ed floa, calcularmpor,e7Al0uiler$ con,ra,o9 L in, impor,e E (Kcon,ra,o.ge,4ias79@ re,urn impor,e@ N

    N

    )0uipo$.javapu+lic class )0uipo$ ex,ends ,em$ L pro,ec,ed floa, calcularmpor,e7Al0uiler$ con,ra,o9 L in, seguro)0uipo E 5"@ in, impor,e E seguro)0uipo T 5Kcon,ra,o.ge,4ias79@ re,urn seguro)0uipo T impor,e@ NNuego$.javapu+lic class uego$ ex,ends ,em$ L ,ring fa+rican,e@ pu+lic uego$7,ring fa+rican,e9 L ,his.fa+rican,e E fa+rican,e@

    N pu+lic ,ring ge,`a+rican,e79 L re,urn fa+rican,e@ N pro,ec,ed floa, calcularmpor,e7Al0uiler$ con,ra,o9 L ,ring fa+rican,e E ,his.fa+rican,e@ in, ,asa E "@ if 7fa+rican,e.e0uals7M&la1,a,ionM99 ,asa E (@ if 7fa+rican,e.e0uals7Min,endoM99 ,asa E !@ in, impor,e E ,asaKcon,ra,o.ge,4ias79@ re,urn impor,e@ NN

  • 8/10/2019 Manual Fundamentos Java

    75/141

    Fundamentos de Java Julio 2008

    5.3. E" %pe&a%& $ntance%+ cat

    E" 'p%(a/'( $n&anc%' p%(#$&% /%&%(#$na( "a c"a% /% !n ')*%&' %n &$%#p' /% %*%c!c$

  • 8/10/2019 Manual Fundamentos Java

    76/141

    Fundamentos de Java Julio 2008

    ?!;!7! Cases 4+na

    Una c"a% $na" n' p!%/% %( pa/(% /% '&(a c"a%.Una c"a% p!%/% %( /%$n$/a c'#' $na" pa(a %$&a( "a %(%nc$a.E" c'#p$"a/'( % #a %$c$%n&% c'n /%$n$c$'n% $na" p'( !% n' )!ca(a %&a c"a% ' #&'/' a" &(a&a( c"a%

    %(%/a/a.

    pu+lic final class Color L pu+lic final s,a,ic ,ring )S>O E M``````M@ pu+lic final s,a,ic ,ring ge,Flanco79 L re,urn M""""""M@ NN

    E*%(c$c$' R%a"$6a( "' $?!$%n&%.

  • 8/10/2019 Manual Fundamentos Java

    77/141

    Fundamentos de Java Julio 2008

    pu+lic class &elicula L priva,e ,ring ,i,ulo@ pu+lic &elicula7,ring ,i,ulo9 L ,his.,i,ulo E ,i,ulo@ N pu+lic void finali3e79

    L 1s,em.ou,.prin,ln7Me aca+o MT,i,ulo9@ NN

    pu+lic class es,`inali3e L pu+lic s,a,ic void main 7,ringIJ args9 L

    &elicula glo+o E new &elicula7MeligM9@glo+o E null@

    N

    N

    5.*. E(e&c$c$%Enc!%n&(% "' %(('(% %n %" $?!$%n&% c

  • 8/10/2019 Manual Fundamentos Java

    78/141

    Fundamentos de Java Julio 2008

    6. ,ring ge,Alias79 re,urn super.ge,Alias79@. N

    5.,. La'%&at%&$%.

    C(%% !na c"a% I&%#.*aa c'n "' $?!$%n&% a&($)!&' $/ $n&K &$&!"' /%c($pc$

  • 8/10/2019 Manual Fundamentos Java

    79/141

    Fundamentos de Java Julio 2008

    priva,e in, duracion@

    pu+lic &elicula7,ring ,i,ulo ... in, duracion9 L super7...9@ ,his.direc,or E direc,or@ ,his.duracion E duracion@ N

    pu+lic void se,4irec,or... pu+lic ,ring ge,4irec,or... pu+lic void se,4uracion... pu+lic ,ring ge,4uracion... pu+lic ,ring ,o,ring...N

    C(%% !na c"a% J!%?'.*aa !% %(%/% /% I&%#.*aa c'n "' $?!$%n&% a&($)!&' #%#'($a $n& &$p' S&($n?. E&'a&($)!&' %(an p($a/'.

    A?(%?!% !n c'n&(!c&'( c'n a(?!#%n&' &$&!"' /%c($pc$

  • 8/10/2019 Manual Fundamentos Java

    80/141

    Fundamentos de Java Julio 2008

    N

    La c"a% A"!$"%(.*aa c'n&a(a c'n "' $?!$%n&% a&($)!&' !n a((%?"' /% b&%# !% % a"!$"a(an I&%# %" c"$%n&% !%a"!$"a C"$%n&% !n n!#%(' /% a"!$"%( $/ $n& "a can&$/a/ /% &%# a"!$"a/' $n& "a can&$/a/ /% /$a /% a"!$"%($n&.

    Un a&($)!&' /% c"a% p($a/' %&>&$c' %n&%(' %(> %" c'n&a/'( /% $/ !% $n$c$a(a %n 500.Una c'n&an&% %(> %" #>;$#' n!#%(' /% &%# a a"!$"a( !% % 10.Una c'n&an&% %(> %" $#p!%&' /%" a"!$"%( /% 1+=.Un c'n&(!c&'( a$?na(a %" c"$%n&% p'( a(?!#%n&' %" n!#%(' /% /$a /% a"!$"%(. Ta#)$n c(%a(a %" a((%?"' /% &%# ! n!#%(' /% a"!$"%(.Un #&'/' pa(a a?(%?a( &%# a" a((%?"' /% &%# /%" a"!$"%(.Un #&'/' $#p($#$(a &'/' %" /%&a""% /%" a"!$"%( %n pan&a""a.

    Al0uiler.javapu+lic class Al0uiler L priva,e s,a,ic in, siguien,eAl0uilerd E 5""@ priva,e in, al0uilerd@ priva,e in, numero4ias@ priva,e in, clien,ed@ priva,e in, can,idad,ems@

    priva,e in,IJ i,emd@ priva,e final s,a,ic in, %A)% E !"@

    priva,e final s,a,ic dou+le %&;)O E ".!P@...

    pu+lic Al0uiler7in, clien,ed/ in, numero4ias9 L ,his.al0uilerd E ... ,his.clien,ed E ... ... i,emd E new in,I%A)%J@ N pu+lic void agregar,em7in, i,em9 L if 7...9 L i,emdI...J E i,em@ can,idad,emsTT@ N

    else 1s,em.ou,.prin,ln7M4emasiados 2,emsXM9@ N pu+lic void imprimir>epor,e79 L 'K

    Clien,e d: (""" om+re: alvor Dardin 4ias al0uiler: 5 4e,alle !. )l &adrino &recio E !.!" (. Odisea (""! &recio E (.(" $. Aeropuer,o &recio E $.$" mpor,e ven,a E $$."" mpor,e ,o,al E $P.(

    K' N

    N

    E" p('?(a#a Tac'(aF$"# (%a"$6a(a %" a"!$"%(

    pu+lic class acora`ilms L pu+lic s,a,ic void main7,ringIJ args9 L Al0uiler al0uiler E new Al0uiler7(""!/59@ al0uiler.agregar,em7!""!9@ al0uiler.agregar,em7!""(9@ al0uiler.agregar,em7!""$9@ al0uiler.imprimer>epor,e79@ N

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.7+

  • 8/10/2019 Manual Fundamentos Java

    81/141

    Fundamentos de Java Julio 2008

    N

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.80

  • 8/10/2019 Manual Fundamentos Java

    82/141

  • 8/10/2019 Manual Fundamentos Java

    83/141

    Fundamentos de Java Julio 2008

    pu+lic s,a,ic void main 7,ringIJ args9 L

    &elicula pelicula E new &elicula79@

  • 8/10/2019 Manual Fundamentos Java

    84/141

    Fundamentos de Java Julio 2008

    Ta#)$n % p!%/% /%$n$( "a $n&%(a% $n "' ca"$$ca/'(% pu+lic s,a,ic final a+s,rac, p!%&'!% 'n $#p"c$&'.

    Pa(a /%c"a(a( !% !na c"a% !% $#p"%#%n&a !na $n&%(a% % !a implemen,s

    La.o(ato(+o

    ^!% a"&a %n %" $?!$%n&% c

  • 8/10/2019 Manual Fundamentos Java

    85/141

    Fundamentos de Java Julio 2008

    3epelin.se,[email protected]"9@1s,em.ou,.prin,ln73epelin.ge,4ireccion799@&a,in pa,in E new pa,in79@pa,in.girar4erecha7P"9@

    NN

    EJERC&C&O 'C(%a( "a $n&%(a6 &uedeCan,ar!% % capa6 /% can&a( !n $n&%(a6 #! $#p"% !%

  • 8/10/2019 Manual Fundamentos Java

    86/141

    Fundamentos de Java Julio 2008

    E1e()+)+o 2!

    A"?!n' %(% p!%/%n ca#$na( p!%/% na/a( %&a /' capac$/a/% 'n $n&%(a%&uedeCaminar.java &uedeadar.java. L' #a#$%(' 'n an$#a"% !% p!%/%n #'%(%%amifero.java. E" ?a&' % !n #a#$%(' !% p!%/% na/a( #'%(% Sa,o.java.Un L'(' p!%/% ca#$na( p%(' n' p!%/% na/a(.&uedeCaminar.javapu+lic in,erface &uedeCaminarL pu+lic void caminar79@N&uedeadar.javapu+lic in,erface &uedeadar L pu+lic void nadar79@N%amifero.javapu+lic class %amifero L

    ,ring especie/ color@ pu+lic void caminar79 L 1s,em.ou,.prin,ln7M)l mam2fero caminaM9@ NNSa,o.javapu+lic class Sa,o ex,ends %amifero implemen,s &uedeCaminar/ &uedeadar L priva,e in, numero&a,as E @ pu+lic void nadar79 L 1s,em.ou,.prin,ln7M)l ga,o nadaM9@ NN

  • 8/10/2019 Manual Fundamentos Java

    87/141

    Fundamentos de Java Julio 2008

    C(%% "a c"a% F%"$n'.*aa % !n #a#$%(' !% ca#$na p!%/% na/a(.'/$$!% "a c"a% a&'.*aa % !n F%"$n'C(%% "a c"a% T$?(%.*aa

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.8-

  • 8/10/2019 Manual Fundamentos Java

    88/141

    Fundamentos de Java Julio 2008

    Tema !. COLECCIONES DE OBJETOSResumenSe estudiara el uso de colecciones de objetos y una t&cnica de ordenaci"n mediante interaces!

    ,.1. LA CLASE OBJECTT'/a "a c"a% %n *aa %(%/an /% "a c"a% *aa."an?.O)*%c&.L' $?!$%n&% #&'/' % %(%/an /% "a c"a% O)*%c&)''"%an %!a"O)*%c& ')* In/$ca $ '&(' ')*%&' % $?!a" a '&('.$n& ac'/% P('p'(c$'na !n a"'( ac'/% pa(a %" ')*%&' $/S&($n? &'S&($n? P('p'(c$'na !na (%p(%%n&ac$

  • 8/10/2019 Manual Fundamentos Java

    89/141

    Fundamentos de Java Julio 2008

    !2!'! A(/u+te)tu(a!&&p*aa.!n.c'#*2%1.4.2/'cap$*aa!&$"pacGa?%:&(%%."

    La $n&%(ac% "a c"a% %&>n (%"ac$'na/a %n !n a(#a6

  • 8/10/2019 Manual Fundamentos Java

    90/141

  • 8/10/2019 Manual Fundamentos Java

    91/141

    Fundamentos de Java Julio 2008

    E" c'nc%p&' /% P'"$#'($#' ap"$ca pa(a &'/a "a c"a% !% $#p"%#%n&an %&a $n&%(a%.La c"a% !% $#p"%#%n&an "a $n&%(a% L+st'n A((a5L+st L+nedL+stLa c"a% !% $#p"%#%n&an "a $n&%(a% Set'n as

  • 8/10/2019 Manual Fundamentos Java

    92/141

    Fundamentos de Java Julio 2008

    &roduc,o carne E new &roduc,o7MCarneM/ (9@

    '' 4efinir un Arra1

  • 8/10/2019 Manual Fundamentos Java

    93/141

    Fundamentos de Java Julio 2008

    pu+lic &roduc,o7,ring s/ in, i9 L nom+re E s@ can,idad E i@ N

    pu+lic ,ring ,o,ring79L

    re,urn 7Mom+re: MTnom+reTM Can,idad: MTcan,idad9@N

    pu+lic ,ring ge,om+re79 L re,urn ,his.nom+re@N

    pu+lic +oolean e0uals7 O+jec, o+je,o 9 L

    if 7o+je,o EE null9 re,urn false@

    &roduc,o produc,o E 7&roduc,o9o+je,o@ if 7,his.ge,om+re79 EE produc,o.ge,om+re79 9 re,urn ,rue@

    re,urn false@

    N

    pu+lic in, hashCode79 Lre,urn ,his.ge,om+re79.hashCode79@

    N

    N

    : A!n c!an/' % a?(%?a('n - %"%#%n&' "a "$&a '"' c!%n&a c'n 5. S%& n' p%(#$&% /!p"$ca/'.: La %a"!ac$'n /% /!p"$c$/a/ /% ')*%&' % (%a"$6a #%/$an&% "' #&'/' %!a" aC'/%.: Un S%& n' c!%n&a c'n $n/$c% p'( "' !% pa(a %"$#$na( !n %"%#%n&' % $n/$ca %" ')*%&'.%ercadoDashe,.java

    impor, java.u,il.K@pu+lic class %ercadoDashe,L pu+lic s,a,ic void main7,ring argsIJ9 L '' 4efinir 5 ins,ancias de la Clase &roduc,o &roduc,o pan E new &roduc,o7M&anM/ 69@ &roduc,o leche E new &roduc,o7M

  • 8/10/2019 Manual Fundamentos Java

    94/141

    Fundamentos de Java Julio 2008

    1s,em.ou,.prin,ln7M

  • 8/10/2019 Manual Fundamentos Java

    95/141

  • 8/10/2019 Manual Fundamentos Java

    96/141

    Fundamentos de Java Julio 2008

    '' ;n reee, solo elimina por valor de O+je,o lis,a.remove7man3anas9@ mos,rar

  • 8/10/2019 Manual Fundamentos Java

    97/141

  • 8/10/2019 Manual Fundamentos Java

    98/141

    Fundamentos de Java Julio 2008

    '' 4evuelve -! si ,his es = 0ue o+je,o '' 4evuelve " si son iguales

    '' 4ependera del argumen,o como comparar los a,ri+u,os. ,ring nom+reO+je,o@ if 7o+je,o ins,anceof &roduc,o 9 L

    &roduc,o produc,o E 7&roduc,o9o+je,o@ nom+reO+je,o E produc,o.ge,om+re79.,o

  • 8/10/2019 Manual Fundamentos Java

    99/141

    Fundamentos de Java Julio 2008

    agenda.pu,7MOficinaM/ M7$"9-5("5-85M9@ agenda.pu,7MA+ogadoM/ M7569-!("5-$5M9@ agenda.pu,7M&apaM/ M7559-P555-$("M9@ agenda.pu,7MiendaM/ M789-(""-86""M9@

    '' 4efinir ,era,or para ex,raer'imprimir valores

    mos,rar%apa7agenda9@'' 4efinir un arreglo con valores de,erminados

    ,ring personasIJ E LMioM/ MuegrosM/ MA+ogadoMN@

    '' )liminar los valores con,enidos en el arreglofor7in, i E "@ i = personas.leng,h@ iTT9 L

    agenda.remove7personasIiJ9@ N mos,rar%apa7agenda9@ N

    pu+lic s,a,ic void mos,rar%apa7%ap agenda9 L 1s,em.ou,.prin,ln7M Agenda con M T agenda.si3e79 T

    M ,elefonosM9@ for7 ,era,or i, E agenda.ke1e,79.i,era,or79@ i,.hasex,79@9 L

    ,ring clave E 7,ring9i,.nex,79@ ,ring valor E 7,ring9agenda.ge,7clave9@ 1s,em.ou,.prin,ln7clave T M : M T valor9@ N NN

    !;!2! E1em,o de T(eeMa,: En !n T(%%ap "' %"%#%n&' %&an '(/%na/' p'( "a c"a%: L!%?' % /%$n%n /' (%%(%nc$a /% "a $n&%(a% S'(&%/ap: En "a p($#%(a % c'"'can "a c"a% !% % %nc!%n&(an %n&(% A O. %&'/' !)#apA O: La %?!n/a a"#ac%na "a c"a% /%/% "a P ac$a %" $na".: E&a c'#pa(ac$'n% % an %c' c'n "a c"a% S&($n?.: O&(a c"a% /%)%(>n /%$n$( ! p('p$' #&'/' c'#pa(%T' %!a" aC'/%.Agendaree%ap.javaimpor, java.u,il.K@pu+lic class Agendaree%apL pu+lic s,a,ic void main7,ring argsIJ9 L '' 4efinir un ree%ap

    ree%ap agenda E new ree%ap79@

    '' Agregar pares MclaveM-MvalorM al Dash%ap agenda.pu,7M4oc,orM/ M7T5(9-"""-5"""M9@ agenda.pu,7MCasaM/ M78889-5""-$""M9@ agenda.pu,7MDermanoM/ M7559-("(-$($$M9@ agenda.pu,7MioM/ M7(!9-!"!"-""("M9@ agenda.pu,7MuegrosM/ M7$$9-6!"5-$$M9@ agenda.pu,7MOficinaM/ M7$"9-5("5-85M9@ agenda.pu,7MA+ogadoM/ M7569-!("5-$5M9@ agenda.pu,7M&apaM/ M7559-P555-$("M9@ agenda.pu,7MiendaM/ M789-(""-86""M9@

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.+8

  • 8/10/2019 Manual Fundamentos Java

    100/141

  • 8/10/2019 Manual Fundamentos Java

    101/141

  • 8/10/2019 Manual Fundamentos Java

    102/141

    Fundamentos de Java Julio 2008

    !'!7! E)e,)+ones

    Devov+endo a e)e,)+8n

  • 8/10/2019 Manual Fundamentos Java

    103/141

  • 8/10/2019 Manual Fundamentos Java

    104/141

    Fundamentos de Java Julio 2008

    !'!?! Iue se ,uede !% #an%*a("a.

    -.2. E:CEPCIONES CON JAVA

    !2!'! Como )a,tu(a( 5 mane1a( una e)e,)+8n: Enc$%((% %" c

  • 8/10/2019 Manual Fundamentos Java

    105/141

  • 8/10/2019 Manual Fundamentos Java

    106/141

  • 8/10/2019 Manual Fundamentos Java

    107/141

    Fundamentos de Java Julio 2008

    Nca,ch 7ndexOu,OfFounds)xcep,ion e9 L

    1s,em.err.prin,ln7M)rror en MTcadenaTM MTposicion9@N

    N pu+lic s,a,ic char ge,

  • 8/10/2019 Manual Fundamentos Java

    108/141

    Fundamentos de Java Julio 2008

    -.3. LABORATORIOEna% %&% %*%#p"'

    pu+lic class Cerrado)xcep,ion ex,ends )xcep,ion L pu+lic Cerrado)xcep,ion 79 LN pu+lic Cerrado)xcep,ion 7,ring msg9 L super7msg9@ NNpu+lic class es,Cerrado)xcep,ion L

    pu+lic s,a,ic void main7,ringIJ args9 L,r1 L a+rir

  • 8/10/2019 Manual Fundamentos Java

    109/141

    Fundamentos de Java Julio 2008

    '' mW,odo 0ue lea una fecha valida'' forma,o dd'mm'1111pu+lic s,a,ic ,ring read4a,e7,ring e,i0ue,a9es,)xcepcioneclado.java

    impor, java.io.K@pu+lic class es,)xcepcioneclado L

    pu+lic s,a,ic void main 7,ringIJ args9 L ,r1 L

    ,ring nom+re E read,ring7Mngrese un nom+re: M9@ 1s,em.ou,.prin,ln7Mu longi,ud es MTnom+re.leng,h799@

    in, en,ero E readn,7Mngrese un en,ero: M9@ 1s,em.ou,.prin,ln7M)l cuadrado es MTen,eroKen,ero9@

    N ca,ch 7um+er`orma,)xcep,ion e9 L 1s,em.ou,.prin,ln7M)xcepcion numericaM9@ e.prin,,ackrace71s,em.err9@

    N ca,ch 7Ari,hme,ic)xcep,ion e9 L 1s,em.ou,.prin,ln7M)xcepcion ar,ime,icaM9@ e.prin,,ackrace71s,em.err9@ N ca,ch 7ndexOu,OfFounds)xcep,ion e9 L 1s,em.ou,.prin,ln7M)xcepcion de arreglosM9@ e.prin,,ackrace71s,em.err9@ N ca,ch 7)xcep,ion e9 L 1s,em.ou,.prin,ln7M)xcepcionM9@ e.prin,,ackrace71s,em.err9@ N

    N

    pu+lic s,a,ic ,ring read,ring7,ring e,i0ue,a9,hrows )xcep,ion

    L 1s,em.ou,.prin,7e,i0ue,a9@ ,ring cadenaEMM@ Fuffered>eader in E new Fuffered>eader7new

    npu,,ream>eader71s,em.in99@ cadena E in.read

  • 8/10/2019 Manual Fundamentos Java

    110/141

  • 8/10/2019 Manual Fundamentos Java

    111/141

    Fundamentos de Java Julio 2008

    -oda la conectividad de bases de datos de Java se basa en sentencias (#, por lo que se'ace iprescindible un conociiento adecuado de (# para reali!ar cualquier clase deoperaci&n de bases de datos.

    Casi todos los entornos de desarrollo Java ofrecen coponentes visuales que proporcionanuna funcionalidad suficienteente potente sin necesidad de que sea necesario utili!ar (#,

    aunque para usar directaente el JD/ se 'aga iprescindible.

    #a especificaci&n JDBC requiere que cualquier driver JDBC sea copatible con al enos elnivel 0de entrada1 de *2( (# 34 5ANSI SQL 92 Entry Level6.

    !'!2! A))eso JD9C a .ase de datos

    )l *+ JDBC soporta dos odelos diferentes de acceso a Bases de Datos, los odelos de dos" tres capas.

    Modelo de dos capas

    )ste odelo se basa en que la cone7i&n entre la aplicaci&n Java o el applet que se ejecutaen el navegador, se conectan directaente a la base de datos.

    )sto significa que el driver JDBC espec8fico para conectarse con la base de datos, deberesidir en el sistea local. #a base de datos puede estar en cualquier otra quina " seaccede a ella ediante la red. )sta es la configuraci&n de t8pica Cliente/Servidor% elprograa cliente env8a instrucciones (# a la base de datos, $sta las procesa " env8a losresultados de vuelta a la aplicaci&n.

    Modelo de tres capas

    )n este odelo de acceso a las bases de datos, las instrucciones son enviadas a una capainteredia entre Cliente " (ervidor, que es la que se encarga de enviar las sentencias (# ala base de datos " recoger el resultado desde la base de datos. )n este caso el usuario notiene contacto directo, ni a trav$s de la red, con la quina donde reside la base de datos.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.110

  • 8/10/2019 Manual Fundamentos Java

    112/141

    Fundamentos de Java Julio 2008

    )ste odelo presenta la ventaja de que el nivel interedio antiene en todo oento elcontrol del tipo de operaciones que se reali!an contra la base de datos, " ades, est laventaja adicional de que los drivers JDBC no tienen que residir en la quina cliente, lo cuallibera al usuario de la instalaci&n de cualquier tipo de driver.

    !'!7! T+,os de d(+ve(s

    9n driver es una librer8a .jar por lo general, la que engloba clases totalente escritas enJava las que periten conectarse a una base de datos " trabajar con ellas.

    9n driver JDBC puede pertenecer a una de cuatro categor8as diferentes en cuanto a la forade operar.

    1. P!%n&% JDBC:ODBC2. Jaa B$na($'3. Jaa P('&'c'"' Na&$'4. Jaa P('&'c'"' In/%p%n/$%n&%

    T'/' %&' /($%( /%)%n !a(% (%%(%nc$>n/'% "a "$)(%(a .*a( %n %" p('%c&' Jaa !% "' !&$"$c%.

    /.2. P!ente 1. JDBC;ODBC

    :sta priera categor8a de drivers es la utili!ada por (un inicialente para populari!ar JDBC" consiste en aprovec'ar todo lo e7istente, estableciendo un puente entre JDBC " ODBC.)ste driver convierte todas las llaadas JDBC a llaadas ODBC " reali!a la conversi&ncorrespondiente de los resultados.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.111

  • 8/10/2019 Manual Fundamentos Java

    113/141

    Fundamentos de Java Julio 2008

    !2!' #enta1as

    Java dispone de acceso inediato a todas las fuentes posibles de bases de datos

    2o 'a" que 'acer ninguna configuraci&n adicional aparte de la "a e7istente.

    !2!2 Desventa1as

    #a a"or8a de los drivers ODBC a su ve! convierten sus llaadas a llaadas a unalibrer8a nativa del fabricante DB;(

    o #a lentitud del driver JDBC

  • 8/10/2019 Manual Fundamentos Java

    114/141

    Fundamentos de Java Julio 2008

    )ste driver es un driver 100% avapero a>n as8 necesita la e7istencia de un c&digo binario5la librer8a DB;(6 en la quina del cliente, con las liitaciones " probleas que estoiplica.

    !7!' #enta1as

    gualente, dependiendo de la fora en que est$ prograado el driver, puede nonecesitar ninguna clase de configuraci&n por parte del usuario

    2o 'a" que 'acer ninguna configuraci&n adicional aparte de la "a e7istente.

    !7!2 Desventa1as

    )l cliente est ligado a un servidor DB;( concreto. (e debe proporcionar los drivers ODBC adecuados " configurarlos correctaente.

    !7!7 Resumen

    )sto 'ace que este tipo de drivers se use apliaente en casos en que se va a trabajar conun >nico gestor base de datos, sin ebargo en casos de tener que cabiar de gestor 'abrque conseguir el driver de dic'o gestor " se resuelve la dificultad de una anerarelativaente sencilla.

    /.4. Jaa P&%t%c%"% $nepen$ente

    )sta es la opci&n s fle7ible, se trata de un driver 100% ava / !roto"olo inde#endiente,que requiere la presencia de un interediario en el servidor.

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.113

  • 8/10/2019 Manual Fundamentos Java

    115/141

    Fundamentos de Java Julio 2008

    )n este caso, el driver JDBC 'ace las peticiones de datos al interediario en un protocolo dered independiente del servidor DB;(.

    )l interediario a su ve!, que est ubicado en el lado del servidor, convierte las peticionesJDBC en peticiones nativas del sistea DB;(.

    !;!' #enta1as

    )l prograa que se ejecuta en el cliente #os drivers son 100% ava

    ndependencia respecto al sistea de bases de datos que se encuentra en elservidor.

    !;!2 Desventa1as

    (er8a el costo del servidor de base de datos " no del iso dirver.

    !;!7 Resumen

    8i una empresa distri%uye una aplicacin Java para que sus usuarios puedanacceder a su servidor M8 8>7 8erver y posteriormente decide cam%iar el servidorpor ?racle, My8ql, Post@res o DA:, no necesita volver a distri%uir la aplicacin, sinoque Bnicamente de%e recongurar la aplicacin residente en el servidor que seencarga de trans&ormar las peticiones de red en peticiones nativas.

    /.5. L$ta e &$e& e caena e c%nex$

  • 8/10/2019 Manual Fundamentos Java

    116/141

    Fundamentos de Java Julio 2008

    $c(''& S^L S%(%(*/)c%)"'?$c#"%(%(4DBWe,OSTWPORTW%)"'?$c.*/)c.#"%(%(4.D($%(

    O(ac"% T$n*/)c'(ac"%&$ne,OSTWPORTWSIDW

    '(ac"%.*/)c./($%(.O(ac"%D($%(

    P'$n&Ba% E#)%//%/ S%(%(*/)cp'$n&)a%%#)%//%/_PORTW`DBWc'#.p'$n&)a%.*/)c.*/)cUn$%(a"D($%(

    C"'!/cap%*/)cc"'!/cap%DBWCO.c"'!/cap%.c'(%.JDBCD($%(

    C"'!/cap% RI*/)c(#$,OSTWPORTW*/)cc"'!/cap%DBWR#$J/)c.RJD($%(

    F$(%)$(/ JCAJDBC D($%(*/)c$(%)$(/"_,OSTW_PORTW``DBW'(?.$(%)$(/".*/)c.FBD($%(

    IDS S%(%(*/)c$/,OSTWPORTWc'nn[/nXfODBCDSNNAEWf$/.".IDSD($%(

    In'(#$; Dna#$c S%(%(*/)c$n'(#$;:"$,OSTWPORTWDBWINFORI9SERVERXSERVERNAEWc'#.$n'(#$;.*/)c.I;D($%(

    In&an&DB 3.13 an/ %a("$%(*/)c$/)DBW*/)c.$/)D($%(

    In&an&DB 3.14 an/ "a&%(*/)c$/)DBW'(?.%n/(a.$n&an&/).*/)c.$/)D($%(

    In&%()a% In&%(C"$%n& D($%(*/)c$n&%()a%,OSTWDBW$n&%()a%.$n&%(c"$%n&.D($%(

    ,p%('n$c S^L 1.2 an/ %a("$%(*/)c,p%('n$cS^LDBWS".D($%(

    ,p%('n$c S^L 1.3 an/ "a&%(*/)c,p%('n$cS^LDBW'(?.".*/)cD($%(

    $c(''& S^L S%(%( JT!()' D($%(*/)cJT!()',OSTWPORTWDBWc'#.ana.*&!()'./($%(.D($%(

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.115

  • 8/10/2019 Manual Fundamentos Java

    117/141

    Fundamentos de Java Julio 2008

    $c(''& S^L S%(%( Sp($n&a D($%(*/)c$n%&/a%,OSTWPORTW[/a&a)a%XDBWc'#.$n%&.&/.T/D($%(

    $c(''& S^L S%(%( 2000 $c(''& D($%(*/)c#$c(''&"%(%(,OSTWPORTW_KDa&a)a%Na#%XDBW`

    c'#.#$c(''&.*/)c."%(%(.S^LS%(%(D($%(

    S^L .S^L D($%(*/)c#",OSTWPORTWDBW'(?.?*&.##.#".D($%(

    O(ac"% OCI 8$*/)c'(ac"%'c$8eSIDW'(ac"%.*/)c./($%(.O(ac"%D($%(

    O(ac"% OCI +$*/)c'(ac"%'c$eSIDW'(ac"%.*/)c./($%(.O(ac"%D($%(

    P'&?(%S^L -.5 an/ %a("$%(*/)cp'&?(%",OSTWPORTWDBWp'&?(%".D($%(

    P'&?(%S^L 7.0 an/ "a&%(*/)cp'&?(%",OSTWPORTWDBW'(?.p'&?(%".D($%(

    S)a% *C'nn%c& 4.2 an/ %a("$%(*/)c)a%T/,OSTWPORTWc'#.)a%.*/)c.S)D($%(

    S)a% *C'nn%c& 5.2*/)c)a%T/,OSTWPORTWc'#.)a%.*/)c2.*/)c.S)D($%(

    /.*. E(e#p"% e !na c%n!"ta enc$""a

    E

  • 8/10/2019 Manual Fundamentos Java

    118/141

    Fundamentos de Java Julio 2008

    9.6 rear una cone

  • 8/10/2019 Manual Fundamentos Java

    119/141

    Fundamentos de Java Julio 2008

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.118

  • 8/10/2019 Manual Fundamentos Java

    120/141

    Fundamentos de Java Julio 2008

    Ventana de Acceso: jfrmAcceso

    ise!o de la interfaz

    "ersonalizacin de Objetos

    JramejfrmAcceso

    title =cces! al sistema

    J+a"eljlbl#suario

    teAt ;suari!

    displaedMnem!nic ;

    J+a"eljlblClave

    teAt Clave

    displaedMnem!nic v

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.11+

    1ttUsua(+o)aa/' %nJTetF+ed

    1,dCave)aa/' %n

    J6asso(dF+ed

    1.tnA)e,ta()aa/' %nJ9utton

    1.tnCan)ea()aa/' %nJ9utton

    1.Usua(+o)aa/' %n

    JLa.e

    1.Cave)aa/' %n

    JLa.e

  • 8/10/2019 Manual Fundamentos Java

    121/141

    Fundamentos de Java Julio 2008

    J9eAtieldjt$t#suario

    teAt

    JPass!rdieldjp%dClave

    teAt

    Jutt!njbtnAceptar

    teAt =ceptar

    mnem!nic =

    t!!l9ip9eAt niciar la validaci&n

    Jutt!njbtnCancelar

    teAt Cancelar

    mnem!nic C

    t!!l9ip9eAt Cerrar la Ventana

    "lan de Eventos

    Control Evento Actividades

    jbtnCancelar action"erformed Cerrar la ventana

    jbtnAceptar action"erformed

    G Veri?icar ue se haa in$resad! el ;suari!

    G Veri?icar ue se haa in$resad! la Clave

    G uscar la clave del usuari! usand! c!m! dat! elusuari! in$resad!

    G 0i se encuentra el usuari!

    ! Veri?icar ue la clave in$resada c!rresp!nda c!nla clave enc!ntrada

    ! 0i c!rresp!nde car$ar la ventanajfrm"rincipal

    lue$! cerrar la ventanajfrmAcceso! 0i n! c!rresp!nde la clave m!strar el mensae

    Clave &ncorrecta

    G 0i n! se encuentra el usuari! en la ta"la de usuari!

    m!strar el mensae #suario 'o autorizado

    Codificacin y "ro(ramacin de Eventos

    1. mp!rtand! li"reras antes del inici! de la clase

    importava.sl.L II Para tra"aar c!n ases de dat!s

    importavaA.sin$.L II Para tra"aar c!n c!ntr!les de ventana

    2. *eclarand! varia"les despu's del inici! de la clase

    C!nnecti!n !C!neAi!nKnullII!"et! c!neAi!n

    0tatement !nstrucci!nKnullII!"et! instrucci!n/esult0et !9a"laKnullII!"et! resultset

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.120

  • 8/10/2019 Manual Fundamentos Java

    122/141

    Fundamentos de Java Julio 2008

    II0trin$ strC!neAi!nK Nd"c7micr!s!?t7slserver7IIl23pc1371433*ataase

    EventsF se$uid! de Actions ?inalmente elia actionPerformed. C!m! se aprecia en la

    ?i$ura7

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.121

  • 8/10/2019 Manual Fundamentos Java

    123/141

    Fundamentos de Java Julio 2008

    +ue$! se $enera de manera aut!m@tica el event! jbtnCancelarActionPerformed. private voidj+tnCancelarAction"erformed(ava.at.event.=cti!nvent evt)

    II 9%*% add !ur handlin$ c!de here7 t)is.setVisible,false)

    Q

    +a instrucci&n7

    t)is.setVisible(false)

    :ace invisi"le la ventana.

    5. Para implementar el event! clic en el "!t&n jbtnAceptar de clic derech! en 'l lue$!

    elia EventsF se$uid! de Actions ?inalmente elia actionPerformed. C!m! en el cas!del "!t&n anteri!r.

    private voidj+tnAceptarAction"erformed(ava.at.event.=cti!nvent evt)

    II 9%*% add !ur handlin$ c!de here7 0trin$ str;suari!K9At;suari!.(et-e$t() II Capturand! usuari!

    0trin$ strClaveKPdClave.(et-e$t() II Capturand! clave

    0trin$ strClaveO* II Clave a capturar de la ase de dat!s

    try

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.122

  • 8/10/2019 Manual Fundamentos Java

    124/141

    Fundamentos de Java Julio 2008

    0trin$ str0D+K N0+C9 Clave /%M ;suari!s 8:/ ;suari!KRN

    str;suari! NRN

    !9a"la K !nstrucci!n.e$ecuteuery(str0D+)

    II Validand! dat! del usuari! in$resad!

    if(S!9a"la.ne$t())

    // El usuario no E$iste en la tabla de usuarios J%pti!nPane.sh!Messa$e*ial!$(thisF

    Nn! eAiste el usuari! in$resad!NF

    N=tenci!nNF

    J%pti!nPane.//%/OM00=#) Q else

    // El usuario fue ubicado en la tabla de usuarios

    strClaveO*K!9a"la.(etStrin((1)

    if(strClave.e0uals(strClaveO*)) // La clave in(resada le corresponde al usuario in(resado

    ?rmPrincipal !?rmKne% ?rmPrincipal()

    !?rm.setVisible(true) this.setVisible(false)

    Q

    else // La clave in(resada no le corresponde al usuario in(resado

    J%pti!nPane.sh!Messa$e*ial!$(thisF

    NClave nc!rrectaNF

    Nrr!rNF

    J%pti!nPane.//%/OM00=#) QQII in de i?Gelse

    QII in de tr

    catc)(0D+Acepti!n e)

    J%pti!nPane.s)o%*essa(eialo((t)isFe.(et*essa(e()FNrr!r de c!neAi!nNF J%pti!nPane.//%/OM00=#)

    QII?in trGcatch

    Q

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.123

  • 8/10/2019 Manual Fundamentos Java

    125/141

    Fundamentos de Java Julio 2008

    Pas!s para usar una "ase de dat!s %racle Apress (#ratuita)

    http7II.!racle.c!mItechn!l!$Ipr!ductsIdata"aseIAeIindeA.htmlr a la p@$ina inicial

    =utenticarse al %racle

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.124

    http://www.oracle.com/technology/products/database/xe/index.htmlhttp://www.oracle.com/technology/products/database/xe/index.html
  • 8/10/2019 Manual Fundamentos Java

    126/141

    Fundamentos de Java Julio 2008

    r a administraci&n

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.125

  • 8/10/2019 Manual Fundamentos Java

    127/141

    Fundamentos de Java Julio 2008

    n administraci&n ir a Usua(+os 9ase Datos

    Crear nuev! usuari!

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.12-

    http://127.0.0.1:8080/apex/f?p=4500:2610:2589003844413225::NO:::http://127.0.0.1:8080/apex/f?p=4500:2610:2589003844413225::NO:::
  • 8/10/2019 Manual Fundamentos Java

    128/141

    Fundamentos de Java Julio 2008

    *ec!nectarse

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.127

  • 8/10/2019 Manual Fundamentos Java

    129/141

    Fundamentos de Java Julio 2008

    V!lver a c!nectarse

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.128

  • 8/10/2019 Manual Fundamentos Java

    130/141

    Fundamentos de Java Julio 2008

    Crear una ta"la del usuari! Ventas7

    G *ar clic al Apl!rad!r de %"et!s

    G Crear una nueva ta"la

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.12+

  • 8/10/2019 Manual Fundamentos Java

    131/141

    Fundamentos de Java Julio 2008

    Crear la Clave Principal de la ta"la de usuari!s (Primar >e)7

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.130

  • 8/10/2019 Manual Fundamentos Java

    132/141

    Fundamentos de Java Julio 2008

    Crear claves aenas (!rein$ >e)7

    Crear /estricci!nes (C!nstraints)7

    9erminar

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.131

  • 8/10/2019 Manual Fundamentos Java

    133/141

    Fundamentos de Java Julio 2008

    ntr!ducir dat!s

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.132

  • 8/10/2019 Manual Fundamentos Java

    134/141

    Fundamentos de Java Julio 2008

    n$resa l!s dat!s

    Creand! !tr! usuari!

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.133

  • 8/10/2019 Manual Fundamentos Java

    135/141

    Fundamentos de Java Julio 2008

    inaliEam!s

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.134

  • 8/10/2019 Manual Fundamentos Java

    136/141

    Fundamentos de Java Julio 2008

    *escar$and! el c!nect!r Java de %racle

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.135

  • 8/10/2019 Manual Fundamentos Java

    137/141

    Fundamentos de Java Julio 2008

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.13-

  • 8/10/2019 Manual Fundamentos Java

    138/141

    Fundamentos de Java Julio 2008

    *escar$ar el *river apr!piad!Clic a =ccept

    ;tiliEand! el *riverG Crear una carpeta libs

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.137

  • 8/10/2019 Manual Fundamentos Java

    139/141

  • 8/10/2019 Manual Fundamentos Java

    140/141

    Fundamentos de Java Julio 2008

    mp!rtar el c!ntr!lad!r de %racle al inici! del pr!$rama

    imp!rt ava.sl.L II Para tra"aar c!n ases de dat!simp!rt avaA.sin$.L II Para tra"aar c!n c!ntr!les de ventana

    imp!rt !racle.d"c.%racle*river

    *e?iniend! la cadena de c!neAi&n

    0trin$ strC!neAi!n K Nd"c7!racle7thin7T1.1.1.12-715227UN

    Autor !n". #n"el Chata $. Revisado por Jos Canchcucaja V.13+

  • 8/10/2019 Manual Fundamentos Java

    141/141

    Fundamentos de Java Julio 2008

    /e$istrand! la clase para c!nectarse c!n el %racle

    Cl