introducción rápida a java.net y java.nio

Upload: portillo63

Post on 11-Feb-2018

245 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    1/115

    LOS^MCWJJLO ^QLCI IHITI/OGS \ HITI/OLM

    J@M EIJG^ WO JEIS GO HITI %H>ZG 9/>-9/:y H>ZG 9/3-7/1,8 DWOCI@GOSMZ" CGZI^^MBBM

    G L@QBG@GOSIJLO/

    Tgrslo >/1 %>19:,

    @lfugb ofgb Inlo

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    2/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-9: Qfloi > cg 997

    OCLJG

    9/ Lotrmcujjlo Qfloi :

    >/ Duoci gotms cg rgcgs Qfloi 9::/ Gb piqugtg hivi/ogt cg H ivi Qfloi :9

    :/9 Lotrmcujjlo Qfloi :9 :/> Bi jbisg hivi/ogt/ZgrvgrZmjkgt Qfloi :: :/: Bi jbisg hivi/ogt/Zmjkgt Qfloi :< :/3 Wo ghg`pbm cg ipbljijlo jblgotg-sgrvlcmr jmo hivi/ogt Qfloi 373/ Wo jeit pmr jmosmbi Qfloi 717/ Wo jeit jmo lotgrdiz frdlji Qfloi 634/ OLM8 uoi ougvi IQL cg gotrici y siblci piri H ivi Qfloi 5>

    4/9 Lotrmcujjlo Qfloi 5> 4/> Bi jbisg hivi/olm/Nuddgr Qfloi 53 4/: Bms jioibgs y bi jbisg

    hivi/olm/jeioogbs/ZgrvgrZmjkgtJeioogbQfloi 51/111>^gvlslo >/1 %17/14/>19:,

    @lfugb ofgb Inlo`inlio I^^MNI ilcl`i QWOSM gs

    Om jing cuci cg qug bi olji rizo pmr bi qug Hivi gs pmpubir gs pmrqug gstclsgicm y pgosicm piri cgsirrmbbir prmfri`is qug sg ghgjutio go gb oivgficmr/I/ Oljmbiu/ I survgy md clstrlnutgc biofuifgs %9ZG cgscg bis prl gris vgrslmogs cg H ivi" mdrgjgib prmfri`icmr uo jmohuotm cg jbisgs g lotgrdijgs piri gstinbgjgr jm`uoljijlmogs ytrinihir jmo bms rgjursms cg rgc/ Bi sl pbldljici lotgrdiz cg mnhgtms cg gstg piqugtg piri biprmfri`ijlo go rgc dijlblti `ujem gb trinihm cg bms cgsirrmbbicmrgs/ Bgofuihgs jm`m J mJ++ smo `uy gdljijgs piri trinihir go rgc" pgrm gb jclfm ogjgsirlm rgsubti nistiotg `sjm`pbljicm y susjgptlnbg cg grrmrgs qug gb gqulvibgotg go H ivi/

    Gb piqugtghivi/olm ipirgjl pmr prl gri vgz go bi H >ZG 9/3 %jmomjlci iotgs jm m@grblo,/ Go bi vgrslo 7/1 cg bi H >ZG %jmomjlci go sus prl gris ngtis jm`m 9/7 y jm m

    Slfgr," sg ei `iotgolcm gstg piqugtg slo ipgois `mcldljijlmogs jmo rgspgjtm i bi 9/3/hivi/olm lotrmcujg uoi ougvi IQL %lotgrdiz cg prmfri`ijlo cg ipbljijlmogs, cg gotrici ysiblci %GZ," jmomjlci jm`m OLM %Ogw LoputMutput,/ OLM sg mrlgoti eijli bi trios lslo

    Jmpyrlfet %j, >11>" >11:" >19:" @lfugb ofgb Inlo/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    4/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-9: Qfloi 3 cg 997

    cg friocgs nbmqugs cg citms/ Zl oms rgstrlofl ms i bi prmfri`ijlo go rgc" bijirijtgrstlji `s rgbgviotg cgb ougvm piqugtg rgslcg go qug pgr ltg jrgir smjkgts slonbmqugm" gs cgjlr" smjkgts qug om nbmqugio gb jursm cgb omr ib cgb prmfri`i lgotrisrgiblzio mpgrijlmogs cg GZ/

    Jm`m ghg`pbm qug sgrvlr piri `mstrir bi ipbljijlo lo`gcliti cg gstms piqugtgs"usir uoi ipbljijlo cg jeirbi gbgjtrolji" qug sgrvlr ti`nlo jm`m elbm jmocujtmr cgbtutmrlib/ Icg`s" lojbulr ibfuoms ghg`pbms cg usm piri bis jbisgs `s rgbgviotgs cg gstmspiqugtgs/ Go gstg tutmrlib rgpgtlr `ujem bi gxprgslo pmr ghg`pbm; pugs eg prgdgrlcminmrcirbm cgscg uo puotm cg vlsti prjtljm y jmojrgtm" y rgcujlr bi tgmri ib ol ml prgsjloclnbg piri qug sg jm`prgocio bms ghg`pbms/

    Go gb jclfm cgb jeit" sg tritiro gxeiustlvi`gotg gb jmotrmb cg bis gxjgpjlmogs"jmo gb dlo cg ipmrtir bi `xl i lodmr ijlo pmslnbg ib usuirlm" y gb jlgrrg cg dbuhms ysmjkgts/ Ibfuoms iutmrgs cg blnrms" irtjubms y tutmrlibgs smnrg ipbljijlmogs piri rgcgspirgjgo jrggr" qulz pmr mptl ls`m m gxjgsm cg jmodliozi" qug bi `g`mrli clspmolnbgslg`prg gs lodlolti" qug bms rgjursms cgb slstg`i mpgritlvm smo loifmtinbgs y qug nisti

    tritir tmcis bis gxjgpjlmogs jm`m sl dugrio uoi smbi/ Mtrms jmodio dgrvmrmsi`gotg go quggb rgjmbgjtmr cg nisuri cg H ivi lotgrvgocr i bm cgus gx `ijeloi piri bl plir bispgbuslbbis qug vio cghiocm/ Qugs nlgo8 gsis jrggojlis smo bis qug euocgo uoi ipbljijlogo rgc/ Zl qulgrg qug uoi ipbljijlo rgslsti bms govltgs cgb `uocm rgib y qug bms usuirlmsom ipugstgo smnrg juotms loutms ifuiotir iotgs cg jmbfirsg %prjtlji pmjm jirltitlvi"pgrm uy drgjugotg," bg rgjm lgocm qug cgsgjeg bis lcgis iotgrlmrgs/

    Qiri sijir gb `xl m pirtlcm pmslnbg cgb tutmrlib" sg rgqulgrg qug gb bgjtmr tgofi uojmomjl lgotm nsljm cg H ivi %jm plbijlo" slotixls" gotrici y siblci, y jmomzji j`mtrinihir jmo elbms cg prmjgsms %tergics,/ Zl nlgo gstms jmomjl lgotms rgsubtio ogjgsirlms%pugcgo jmosubtirsg go bi sgjjlo cg tutmrlibgs cg hiviElspiom," om pugcgolocgpgoclzirsg cg uo dijtmr `ujem `s lotioflnbg8 bi jurlmslcic/ Zlo gbbi" cg oici sgrvlr

    tmcm bm cg`s/Go gb ipirticm > cgb tutmrlib sg lotrmcujgo bms duoci`gotms ogjgsirlms piri gotgocgr

    bis jbisgs cg H ivi qug sg lro gxpbljiocm/ Zg ci uoi rplci lotrmcujjlo i bms jmojgptmsgbg`gotibgs cg rgcgs %smjkgts" citifri`is" COZ" prmtmjmbms LQ" WCQ" SJQ,/

    Go gb ipirticm : sg rgiblzi uoi nrgvg piomr lji cgb piqugtghivi/ogt" sg gxpbljiojmo cgtibbg bis trgs jbisgs ogjgsirlis piri gb cgsirrmbbm cgb jeit LogtIccrgss"ZgrvgrZmjkgt y Zmjkgt y sg lojbuygo ghg`pbms cg usm/

    Go gb ipirticm 3 sg prgsgoti gb jclfm ogjgsirlm piri rgiblzir uo jeit pmr jmosmbi ygo gb ipirticm 7 sg prgsgoti gb jclfm qug bm l pbg`goti jmo uoi lotgrdiz frdlji piri gbusuirlm/

    Go gb ipirticm 4 sg gxpblji bi ougvi IQL cg GotriciZiblci cg H ivi %OLM,"prgstocmsg itgojlo i su utlblcic piri bi prmfri`ijlo go rgc/ Zg gxpbljio bis jbisgs `stlbgs ZgrvgrZmjkgtJeioogb" ZmjkgtJeioogb" Zgbgjtmr y ZgbgjtlmoKgy y sg ciovirlms ghg`pbms cg j`m usirbis/

    Qmr btl m" go gb ipirticm 6 sg ijtuiblzi gb sgrvlcmr cg jeit cgb ipirticm 3 `gcliotgbis jbisgs cgb ougvm piqugtghivi/olm" qug prmpmrjlmoio l pmrtiotgs vgotihis go juiotm itlg`pms cg rgspugsti" iemrrm cg rgjursms y gsjibinlblcic/

    Go gsti sgfuoci vgrslo cgb tutmrlib eg lojbulcm `ujem `itgrlib iusgotg go bi prl grivgrslo %uois omvgoti pflois, y eg rggsjrltm tmcm gb tgxtm mrlfloib/ Gb prlojlpib `mtlvm piri

    qulotupbljir su ti`im mrlfloib gstrlni go qug bi prl gri vgrslo sg gsjrlnl pgosiocm gosu punbljijlo jm`m irtjubm/ Jm`m sg punblj jm`m tutmrlib %sgfuri`gotg pmr `mtlvms cg

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    5/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-9: Qfloi 7 cg 997

    dmr`itm" pugs om bm gsjrln go ES@B ol jmo bi pbiotlbbi U@B cg hiviElspiom om gxlsti go>11>," eg pgosicm cgscg gotmojgs qug tgoi qug jm`pbgtirbm sl om qugri qug bi pibinritutmrlib bg vlolgri friocg/ Eg gspgricm jisl cms ims piri punbljir gsti ougvi vgrslo pmrcms mtlvms8

    Yugri vgr j`m ijgptini OLM bi jm`uolcic cg prmfri`icmrgs/

    Yugri prmnir i dmocm bi vgrslo dloib cg bi H >ZG 7/1 %iotgs 9/7, pirijm`prmnir go qu gsticm qugcinihivi/olm go gbbi/

    Cgscg bi ipirljlo cg bi prl gri vgrslo cg gstg tutmrlib" eg punbljicm go hiviElspiombi prl gri pirtg cgb tutmrlib Hivi y bis rgcgs/ Lotrmcujjlo i bis rgcgs" i hivi/lm" hivi/zlp"hivi/ogt" hivi/olm" i ^@L y i JM^NI/ Gstg trinihm gs `ujem `s jm`pbgtm y gxtgosm quggb qug ustgc bgg iemri" y triti `ujeis `itgrlis iusgotgs iqu/ Iuoqug i`nms tutmrlibgsfuircio sl lbltucgs" gxlstgo cldgrgojlis l pmrtiotgs8

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/J`m eijgr uo jeit go Hivi sg

    mrlgoti `s eijli qulgogs cgsggo gjeir uo vlstizm i hivi/ogt y ihivi/olm piri vgr sl bgs lotgrgsi m om/ Go b sg tritio sbm bis jbisgs y`tmcms l prgsjloclnbgs piri prmfri`ir uo jeit %qug pugcgo sgrvlr piri`ujeis mtris ipbljijlmogs jblgotg-sgrvlcmr,/ Bi tgmri sg ei rgcujlcm ib

    ol m/

    Hivi y bis rgcgs/ Lotrmcujjlo i bis rgcgs" i hivi/lm" hivi/zlp" hivi/ogt"hivi/olm" i ^@L y i JM^NI gs uo trinihm `s jm`pbgtm" cmocg sginmrcio bis jbisgs y `tmcms `s jm`uogs piri rgiblzir ipbljijlmogs gorgc jmo H >ZG sgrvlcmrgs wgn" cg DSQ" oivgficmrgs" ipbljijlmogs ^@L"ipbljijlmogs JM^NI" icg`s cg `itgrlis `uy tlbgs piri gb cgsirrmbbmcg ipbljijlmogs go rgc %GZ cg H ivi" sgrliblzijlo cg mnhgtms"

    lotgroijlmoiblzijlo" jm`prgslo,/ Icg`s" go b sg jm`pirio clstlotistgjombmfis %smjkgts" ^@L" JM^NI" sgrvljlms wgn, y sg gstuclio bmsduoci`gotms tgrljms qug eiy tris jici uoi" is jm`m tris bis rgcgs/

    Jm`m bgjtmr g`pgcgrolcm y `s ibb cg tmci rgcgojlo" slg`prg `g ei cgsifricicmqug bis lcgis cg uo iutmr sg rgpltio gxijti`gotg lfuib go sus mnris %cg`islicmsgsjrltmrgs y dlbsmdms sg icgbiotirmo i su pmji utlblziocm slo rgjitm gb jmrtir y pgfiriotgs cg qug gxlstlgrio bms mrcgoicmrgs,/ Qmr om eijgr i bms cg`s bm qug om qulgrm qug`g eifio i " eg lotgoticm qug bms `itgrlibgs cg Lotrmcujjlo rplci i hivi/ogt y hivi/olmy Hivi y bis rgcgs sgio bm `s clstlotms pmslnbg8 eg inmrcicm bms jmojgptms cgscg clstlotispgrspgjtlvis; sibvm go ibfuoms prridms" eg prmjuricm qug bi rgcijjlo sgi clstloti; jislslg`prg eg usicm dlfuris cldgrgotgs; lojbuym ghg`pbms jmrtms clstlotms/

    Bm oljm jisl lcotljm go i`nms tutmrlibgs gs bi ipbljijlo cg jeirbi gbgjtrolji/ Gs uoghg`pbm tio nugom piri vgr go duojlmoi lgotm bm nsljm cghivi/ogt yhivi/olm qug om egpmclcm rgslstlr g i lojbulrbi pmr cupbljicm/ Go Hivi y bis rgcgs pmcri usir" go su bufir"uoi ipbljijlo cgb gstlbm cg bms hugfms go rgc; pgrm lojbulr uoi lotgrdiz frdlji ol i`gotgprmdgslmoib clstrigri bi itgojlo cgb bgjtmr slo gxpgrlgojli go rgcgs y ibirfiri go gxjgsmbi gxtgoslo cgb jclfm/

    @g eunlgri rgsubticm `uy j`mcm iniocmoir i su sugrtg bi prl gri vgrslo cgbtutmrlib Lotrmcujjlo rplci i hivi/ogt y hivi/olm y cgcljir g sbm i Hivi y bis rgcgs; pgrmeinri cghicm cgsitgoclcms i bms bgjtmrgs qug sbm qulgrgo iprgocgr bm nsljm cg hivi/ogt

    yhivi/olm m qug tlgogo jurlmslcic pmr gjeir uo vlstizm rplcm i bm qug H ivi pugcg mdrgjgrgo juiotm i prmfri`ijlo go rgc/ Jm`m s pmr bms jmrrgms rgjlnlcms qug eiy `ujemsbgjtmrgs is" eg mpticm pmr gsjrlnlr bi sgfuoci vgrslo cg Lotrmcujjlo rplci i hivi/ogt y

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    6/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-9: Qfloi 4 cg 997

    hivi/olm/ Jmodmr g viyio siblgocm vgrslmogs cg H ivi jmo ghmris qug itiio ihivi/ogt mhivi/olm" lr ijtuiblziocm gb tutmrlib/

    L iflog uo iouojlm go qug ipirgjg bm slfulgotg8 uo jicvgr cgsjiosi smnrg uoiji lbbi" tipicm jmo uoi snioi nbioji; cgb tmnlbbm lzqulgrcm jugbfi uoi gtlqugti cmocg sgbgg gb om`nrg cg uoi jmomjlci `irji cg vmcki/ L iflog iemri mtrm go qug sg `ugstri uoipiotibbi ogfri cmocg ipirgjgo rtubms nbiojms jici clgz loutms" cgb tlpm Zg inurrg="Om vg qug gstm om ghmri=" Qmr qu om vi i cirsg uoi vugbti=" Yu inurrlcm gsgstm/ L iflog" pmr btl m" uo iouojlm go qug uo em`nrg gojmrniticm y g`nutlcm go uotrihg jirm sg clrlfg i bi j`iri y cljg8 Z" vgocg`ms uo prmcujtm i sinlgocis cg qug gspgrhucljlib [jirrispgmP/ Om bm vgio rirm8 gs ougstrm ogfmjlm/ Icg`s" lotgoti`ms jiptir ibms icmbgsjgotgs" qug jmostltuygo gb sgf`gotm `s vubogrinbg cgb `grjicm/ Juiocm gbbms"cg iqu i vglotg m trgloti ims" g`plgjgo i sudrlr bis jmosgjugojlis cg ougstrm prmcujtm"omsmtrms yi gstirg`ms hunlbicms/ Jm`m iemri bms pisgs mjjlcgotibgs om vgo jmo nugomsmhms qug ijgbgrg`ms bi `ugrtg cg sus jlucicioms [susplrm cg bi`gotm pmr bms vlghms

    nugoms tlg`pmsP" eg`ms cg gxpioclr gb ogfmjlm eijli pisgs suncgsirrmbbicms m go viscg cgsirrmbbm; yi singo" eiy qug clvgrsldljir [smorlsi j`pbljgP/ Zl sus fmnlgroms lotgotiol pgclr" pmr `mtlvms sioltirlms" bi gotrici cg ougstrm prmcujtm" bgs i`goizi`ms jmorgprgsiblis jm`grjlibgs y cg`iocis iotg mrfiols`ms lotgroijlmoibgs/ Is gvlti`ms qugjrgio qug pugcgo prmtgfgr l puog`gotg bi sibuc cg sus fmngroicms pmr gojl i cgougstrms lotgrgsgs/

    Gstms iouojlms" jm`m pugcg l ifloir" hi`s sg vgro go tgbgvlslo; pugs itgotiojmotri uo prlojlplm gbg`gotib cg bi punbljlcic8 bms prmcujtms" pmr pgrhucljlibgs m lotlbgs qugsgio" cgngo prgsgotirsg cgscg uo puotm cg vlsti pmsltlvm y divmrinbg/ Go ibfuoms jisms" bipunbljlcic smnrgijti y prgsgoti bms prmcujtms cg uoi dmr i tio mptl lsti qug eijg jrggri `ujei fgotg qug bi blngrtic gs uo jmjeg `s vgbmz" jmo `s jinibbms cg pmtgojli; qug

    bi blngrtic cg gxprgslo jmoslstg go tgogr uo tgbdmom `vlb jmo ijjgsm i Lotgrogt y j`iridmtmfrdlji; qug uoms jlblocrms jmo uo pmcgrmsm losgjtljlci smo `ugstris cg i lstic; qugbis pgois cg i`mr sg smbujlmoio jmo uoi jmbmoli %rgjm`gociri Qirs piri gstm btl m///,m qug uo trioqulblziotg iyuci ib rgjlo bbgficm qug om pugcg eijgr i lfms" ib ghgjutlvmqug om pugcg rgslfoirsg i hunlbirsg" i bi sugfri qug om ifuioti i bi ougri/ Go rgiblcic"pmr supugstm" eiy pmjms mnhgtms locustrlibgs qug eifio `s blnrg i oiclg" `s nlgo ibjmotrirlm/

    Qiri jm`pgosir bms gxjgsms cg bi punbljlcic" bms jlucicioms cgngrio rgjlnlr uoigcujijlo qug bgs pgr ltlgri rgjeizir bms lotgotms cg icmjtrloi lgotm lovmbuotirlm/ I dibticg gbbi" gb jmosu lcmr qug om cgsgg sgr gofiicm juiocm icqulgrg uo nlgo cgng eijgrsguoi prgfuoti uy sgojlbbi" tio sl pbg qug sg mbvlci i `goucm8 sg icgjui bi rgiblcic i bi

    punbljlcic= Bi prgfuoti gs vblci piri juibqulgr prmcujtm8 ibl gotms" jmjegs cg sgfuociiom" ougvms dr ijms" ougvis tgjombmfis/ Go gb jism cg H ivi" bi jugstlo sg clvlcg gocms8 jmoslfug H ivi sl pbldljir l trinihm jm m prmfri icmr m cgsirrmbbicmr=" bmsl pbldlji s qug mtrms bgofuihgs y pbitidmr is=

    Jmotgstir sgrli`gotg i gstis jugstlmogs sg ipirti `ujem cg bms mnhgtlvms cg gstgirtjubm" ipirtg cg qug cupbljiri gb ti`im cgb tutmrlib/ Iemri nlgo" bis rgspugstis om smouo jmtm rgsgrvicm i bms gxpgrtms m i bms qug sg cgom loio jm`m tibgs/ Juibqulgri pugcgeijgrbm/ J m= Bgygocm cmju gotms cg clstlotis dugotgs" jm piriocm jmo mtristgjombmfis" eijlgocm prugnis" cgscgiocm bis trgtis cg bms punbljlstis y huzfiocm pmruom ls`m/ L pblji uo jlgrtm trinihm" pgrm oici `s/ Lojbusm sl ustgc sg vg mnblficm iutlblzir uoi smbi tgjombmfi go su qugeijgr clirlm" bm iotgrlmr bg iyucir i singr qu puotms

    cnlbgs tlgog/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    7/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-9: Qfloi 6 cg 997

    Iqu sbm gxpmocr" cg `iogri `uy inrgvlici" bis jirijtgrstljis pmr bis qugrgjm lgocm H ivi piri bi prmfri ijlo go rgc" slo m ltlr bi jm pirijlo jmo mtrms rlvibgs%piri gvltir suspljijlis" `iotgocr bis jltis go su lclm`i mrlfloib,8

    9, Hivi gs uo bgofuihg mrlgoticm i mnhgtms/ J++ gst MM" pgrm gs `ujem `sl purm %pgr ltg citms cgdlolcms pmr gb usuirlm qug om smo mnhgtms" is jm`m bi `gzjbi cgjclfm MM jmo jclfm mcubir m om mcubir,/ J* gst go bi ls`i bogi qug H ivi gojuiotm i MM" pgrm lojbuyg pmr gdljijli gstrujturis cg citms qug om smo mnhgtms/ Siotm

    H ivi jm m J*smo ujem s djlbgs cg usir qug JJ++/

    >, Locgpgocgojli cg bi pbitidmr`i/ Bms nytgjmcgs prmcujlcms ib jm`plbir uoprmfri i H ivi pugcgo ghgjutirsg go juibqulgr pbitidmr i jmo uoi quloi vlrtuib cg H ivi%Vlocmws" EQ-WOLU" Zmbirls" ILU" Xms" Bloux" @ij" DrggNZC" OgtNZC" tgbdmoms `vlbgs,/Cicm qug bis rgcgs jmotlgogo mrcgoicmrgs cg `ujems dinrljiotgs" bi locgpgocgojlirgspgjtm i bi pbitidmr i jmostltuyg uoi jirijtgrstlji `uy viblmsi/ Qmr ghg`pbm" bmsnytgjmcgs cg uo prmfri i H ivi jm plbicm go Vlocmws pugcgo govlirsg pmr DSQ %DlbgSriosdgr Qrmtmjmb" prmtmjmbm cg triosdgrgojli cg irjelvms, i uo slstg`i WOLU" ghgjutirsg yprmnirsg ibb" y bugfm govlirsg i uo tgbdmom vlb piri qug vugbvio i ghgjutirsg/

    Bms bgofuihgs lojbulcms go bi pbitidmr i /Ogt cg @ljrmsmdt ti`nlo sg jm`plbio i uojclfm lotgr gclm locgpgoclgotg cg bi pbitidmr i; pgrm" pmr iemri" /Ogt om sg ei gxtgoclcmi tiotis pbitidmr is jm m H ivi/ Iuoqug bi cmju`gotijlo cg @ljrmsmdt sg instlgog cgusir gb tr lom `quloi vlrtuib" /Ogt sg nisi go uoi" jmomjlci jm`m JB %Jm``moBiofuifg ^uotl`g" gotmrom cg ghgjujlo jm`o cg bgofuihgs,/ I cldgrgojli cg @ljrmsmdt"Zuo sbm ei dm goticm uo bgofuihg piri su `quloi vlrtuib %H ivi," iuoqug pugcg ic ltlrtiotms jm`m /Ogt/

    Qmr gb `m`gotm" gb JB cg @ljrmsmdt sbm gst clspmolnbg jm`grjlib gotg piri bipbitidmr i Vlocmws/ Gxlstg uoi vgrslo rgcujlci qug pugcg ghgjutirsg go clspmsltlvms

    QmjkgtQJ %/Ogt Jm`pijt,/ Qiri gb slstg`i mpgritlvm DrggNZC gxlstg uoi vgrslo rgcujlcicgb JB %bbi`ici mtmr," pgrm su usm sg rgstrlofg i dlogs om jm`grjlibgs/Gb prmygjtm @mom %ettp8www/fm- mom/mrf, sg gojirfi cg cgsirrmbbir piri Bloux uoi

    l pbg`gotijlo" locgpgoclgotg cg @ljrmsmdt y cg jclfm inlgrtm" cg J*" cgb JB y cg bisnlnblmtgjis cg /Ogt; gs cgjlr" su mnhgtlvm jmoslstg go cgsirrmbbir uoi vgrslo inlgrti cg bipbitidmr i /Ogt/ Qmr gb `m`gotm" ei jmosgfulcm iviojgs `uy omtinbgs" pgrm io ommdrgjg uoi vgrslo qug pugci usirsg go uo gotmrom cg prmcujjlo/ Qmr ghg`pbm" lgotrisgsjrlnm gstm %omvlg`nrg cg >113," bi l pbg`gotijlo cg VloDmr s gs `uy cgdljlgotg8 sudibti cg gdljijli y bms drgjugotgs grrmrgs bi eijgo lojbusm lodgrlmr ib IVS cg H ivi/ Bipmsljlo cg @ljrmsmdt rgspgjtm i @mom om gs jbiri8 rgsubti mnvlm qug bis bljgojlis cg@ljrmsmdt om gsto pgosicis piri qug oiclg rgprmcuzji tmcis bis duojlmogs cg /Ogt" pgrm

    bi g`prgsi om ei jmocgoicm gb lotgotm ol ei tm`icm gclcis bgfibgs go jmotri/

    :, Bljgojli cg Hivi/ Zl jmoslcgri ms i H ivi jm m uoi pbitidmr i %gspgjldljijlocgb bgofuihg" nytgjmcg" `quloi vlrtuib H ivi y nlnblmtgjis gstocir," eg ms cg jmojbulrqug su bljgojli om gs cg jclfm inlgrtm/ Juibqulgri pugcg cgsjirfir y usir fritulti`gotgbi @TH cg Zuo" pgrm om sg pgr ltg mcldljir gb jclfm y rgclstrlnulrbm %ti pmjm sg pgr ltgclstrlnulr bi @TH cg Zuo jmo ipbljijlmogs jm grjlibgs" iuoqug s gb H ^G Hivi ^uotl`gGovlrmo`got" gotmrom cg ghgjujlo cg H ivi,/

    Bi gspgjldljijlo cgb bgofuihg" go ji`nlm" s pugcg jmoslcgrirsg cg jclfm inlgrtm8uom pugcg gstuclirbi y jrgir sus prmplis virliotgs cg H ivi" iuoqug om sgio tmtib gotgjm pitlnbgs jmo bi gspgjldljijlo/ FH y IspgjtH smo virliotgs cgb bgofuihg H ivi8 bi prl gri

    iicl fgorljms i H ivi iotgs cg qug ipirgjlgri bi vgrslo 7/1; bi sgfuoci lojbuygjirijtgrstljis piri bi prmfri`ijlo mrlgotici i ispgjtms/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    8/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-9: Qfloi 5 cg 997

    Bi l pbg gotijlo mdljlib cg H ivi %@TH " jm plbicmr i nytgjmcg" nlnblmtgjis gstocir,om gs inlgrti8 pgrtgogjg i Zuo/ Zl ibfulgo cgsjirfi gb jclfm dugotg cg bi H >ZG y bm`mcldlji" om pugcg clstrlnulrbm blnrg`gotg piri usm jm`grjlib %ib goms" om cg dmr i bgfib,/Qiri gbbm" gb prmcujtm rgsubtiotg cgng pisir uois prugnis cg jm`pitlnlblcic y sg cgngmntgogr uoi bljgojli cg Zuo/ Isl ls`m" sl ibfulgo utlblzi piri usm jm`grjlib %om gcujitlvm"prlvicm ol cg lovgstlfijlo, bi l pbg gotijlo cg Zuo cg uo piqugtg cg H ivi" cgngsmbljltir uoi bljgojli jm`grjlib i bi g`prgsi/

    Qiri prmpsltms cg lovgstlfijlo" gxlstg iemri uoi bljgojli H ^B %Hivi ^gsgirjeBljgosg" bljgojli cg lovgstlfijlo cg H ivi, qug pgr ltg jrgir y clstrlnulr jclfm nisicm gogb cg Zuo" iuoqug om pisg bis prugnis cg jm`pitlnlblcic m om sgi jm`pitlnbg jmo bil pbg`gotijlo cg Zuo/ Gsti bljgojli pgr ltg bi clstrlnujlo bgfib cg bgofuihgs cgrlvicmscg H ivi" slg prg qug om sg usgo jmo dlogs jm grjlibgs/

    Iemri nlgo" Zuo pgr ltg ijtuib gotg bi l pbg gotijlo pmr tgrjgrms cg bi @TH " cgbjm`plbicmr m cg bis nlnblmtgjis is jm`m su clstrlnujlo jmo bi bljgojli qug sg gstl gmpmrtuoi" slo qug sgi mnblfitmrlm mntgogr uoi bljgojli suyi m pifir rgfibis" slg`prg qugom sg utlbljg su jclfm/ Gb fmnlgrom nrislbgm" pmr ghg`pbm" gst cgsirrmbbiocm uoi vgrslo

    blnrg cg bi H >ZG %H ivibl,; icg s" gxlstgo ujeis @TH cg jclfm inlgrtm %visgettp8www/fou/mrfsmdtwirgjbisspitestmrlgs/et b*hv`,/Qmr ghg`pbm" Kidgg %ettp8www/kiddg/mrf, gs uoi l pbg`gotijlo cg jclfm blnrg

    %bljgojli FOW FQB, cg bi @TH y cg bis nlnblmtgjis cg jbisgs ogjgsirlis piri tgogr uo H ^G/Ei slcm cgsirrmbbici cgscg jgrm" slo usir gb jclfm cg Zuo" y sg lojbuyg go `ujeisclstrlnujlmogs cg Bloux y NZC %^gc Eit" @iocrikg" ZuZG" Cgnlio" Fgotmm" Jmogjtlvi"QBC" Irk Bloux" DrggNZC" OgtNZC" MpgoNZC,/ Sib y jm`m sg cljg go bi pfloi wgn cgKiddg" .Kiddg ls omt io mddljlibby bljgosgc vgrslmo md teg H ivi vlrtuib ijelog/ Lo dijt" ltjmotilos om Zuo smurjg jmcg it ibb" ioc wis cgvgbmpgc wltemut gvgo bmmklof it teg Zuosmurjg jmcg/ Lt ls bgfib -- nut Zuo jmotrmbs teg H ivi tricg irk" ioc eis ogvgr gocmrsgcKiddg" sm tgjeoljibby" Kiddg ls omt Hivi/ Woi @TH l pbg gotici cgscg jgrm om pugcg

    usir gb tr lom H ivi %gs prmplgcic cg Zuo,; piri gbbm" cgng pisir uois prugnis cgjm pitlnlblcic y sg cgng jmosgfulr uoi bljgojli cg Zuo piri gbbi %H lkgs ^T@" pmr ghg pbm"ju`pbg i`nis jmocljlmogs,/

    @ujeis vmjgs plcgo" lojbusm cgotrm cg Zuo" qug bi l pbg gotijlo mdljlib cg H ivisgi cg jclfm inlgrtm/ Bis rgtljgojlis i gsjujeirbis prmvlgogo cg bi sinlcuri cgb fitmgsjibcicm8 Zuo tuvm prmnbg is jmo @ljrmsmdt pmrqug sti lotgot drif gotir H iviprmcujlgocm uoi vgrslo gspgjdlji piri Vlocmws g lojm`pitlnbg jmo bis rgstiotgs/Juiocm prgfuotirmo ib vljgprgslcgotg cg smdtwirg cg Zuo" H moiteio Zjewirtz" qu bgpirgji bi prmpugsti cg LN@ cg eijgr qug H ivi sgi cg jclfm inlgrtm" jmotgst8 .Ld LN@wiots tm ibbmw lojm`pitlnbg l pbg`gotitlmos" L&vg sggo teit `mvlg/ Lt&s jibbgc &@ljrmsmdtbljgosgs H ivi drm Zuo/& Lt dmrkgc teg H ivi jm` uolty" sgt us nijk ygirs" ioc ls omw teg

    sunhgjt md lotgosg iotltrust bltlfitlmo/ L& omt fmlof tm bgt teit eippgo. %gb huljlm ijin jmo uoijugrcm gotrg bis cms pirtgs8 gb clogrm slg`prg bl i ispgrgzis,/ Gb duturm clr sl bil pbg`gotijlo cg Zuo sg jmovlgrtg go jclfm inlgrtm m om/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    9/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-9: Qfloi < cg 997

    Go gb jism cg bi pbitidmr i /Ogt" bi slotixls y sg`otlji cgb bgofuihg J*sg gspgjldljigo bi omr`i LZMLGJ >:>618>11: %bis pflois wgn cg bis mrfiolzijlmogs GJ@I g LZM smoettp8www/gj`i-lotgroitlmoib/mrf y ettp8www/lsm/mrf" rgspgjtlvi`gotg,/ Bi omr i

    LZMLGJ >:>698>11: cgdlog bi JBL %Jm``mo Biofuifg Lodristrujturg" lodrigstrujturijm`o cg bgofuihgs, go qug bis ipbljijlmogs gsjrltis go clstlotms bgofuihgs pugcgoghgjutirsg go clstlotms slstg is slo ogjgslcic cg rggsjrlnlrbis/ %H ivi om jugoti jmo uoigstiocirlzijlo firiotlzici pmr uo mrfiols`m mdljlib8 gs gsm uo lojmovgolgotg= Om bmjrgm" pugs J++ bbgvi cjicis cg gstiocirlzijlo LZM" IOZL y slfug dlfuriocm go jisltmcms bms cljjlmoirlms cg lodmr tlji jm`m slool m cg lojm`pitlnlblcic m cg dibti cglotgrmpgrinlblcic8 slfugo gxlstlgocm nlnblmtgjis lojm`pitlnbgs gotrg bis clstlotisl pbg`gotijlmogs cg J++ y om pirgjg qug gstg prmnbg`i viyi i cgsipirgjgr" sibvm qugsg gxtlofi gb bgofuihg/,

    @ljrmsmdt govl uoi jirti ib GJ@I go bi qug idlr i qug mtris l pbg`gotijlmogs cgJ*m cgb JB .friot mo i omo-clsjrl loitmry nisls" tm ioy pirty rgqugstlof lt" bljgosgs mo

    rgismoinbg tgr s ioc jmocltlmos" dmr lts pitgot%s, cgg`gc ogjgssiry dmr l pbg`gotlof tegGJ@I stiocirc/ Zlo g`nirfm" om eiy qug mbvlcir qug bi pbitidmr i tlgog `ujems mtrmsjm`pmogotgs ipirtg cg J*y cg bi JB %VloDmr`s" ICM /Ogt" IZQ /Ogt" gtj/, y qug

    Seg /Ogt Dri gwmrk lojbucgs vibuinbg lotgbbgjtuib prmpgrty ngbmoflof tm @ljrmsmdt/H ust blkg ioy mtegr jm pioy" wg wlbb rgvlgw ioy ijtlmo teit iy iddgjt mur lotgbbgjtuibprmpgrty rlfets ngdmrg `iklof i cgjlslmo inmut emw tm prmjggc/ Ioy mtegrspgjubitlmo ls hust teit" spgjubitlmo/ % gspugsti cg @ljrmsmdt i bi prgfuoti cg sleini pitgotgs smnrg tgjombmfis cg /Ogt y" go gsg jism" sl @ljrmsmdt lni i rgouojliri juibqulgr lotgotm cg bl ltir gb prmygjtm @mom u mtrms lotgotms cg l pbg`gotir /Ogt;punbljici go bi rgvlsti Hivi Cgvgbmpgrs Hmuroib" omvlg`nrg cg >11>" vmbu`go 6"o`grm 99/,

    Omti8 Bi l pbg`gotijlo blnrg `s jmomjlci cg bis nlnblmtgjisgstocir cg H ivi %hivi/(" hivix/(, gs FOW JBIZZQISE" uoil pbg`gotijlo jmostrulci cgscg jgrm/ Jisl tmcis bis `quloisvlrtuibgs blnrgs m cg jclfm inlgrtm usio FOW JBIZZQISE/

    Zl nlgo gb gsdugrzm qug eiy tris FOW JBIZZQISE gs `grltmrlm"

    gsti l pbg`gotijlo gst rgtrisici jmo rgspgjtm i bis vgrslmogs cgH ivi qug vi sijiocm Zuo y dibbi go ibfuois nlnblmtgjis %Zwlof" pmrghg`pbm" om clspmog cg uoi l pbg`gotijlo jm`pbgti,/ Gstmsprmnbg is sg trios ltgo i tmcis bis @TH blnrgs m inlgrtis qug usioFOW JBIZZQISE" bm juib rgstrlofg su utlblzijlo go gotmromsg`prgsirlibgs/

    Jmo bi bljgojli H ^B cg Zuo" sg pugcg jm pbgtir FOWJBIZZQISE jmo bis nlnblmtgjis qug io om l pbg`goti; pgrm eiyqug tgogr go jugoti qug bms prmcujtms rgsubtiotgs sbm sg pmcro usirgo prmygjtms cg lovgstlfijlo/

    Zl Zuo cgjlclgri ibfo ci qug H ivi cgng sgr cg jclfm inlgrtm"nistiri jmo qug clstrlnuygri bis nlnblmtgjis gstocirgs cg H ivi nihmibfuoi cg bis bljgojlis cg jclfm inlgrtm/ Zbm jmo gsm" bms prmygjtmsrgbijlmoicms jmo @TH inlgrtis gvltirio rggsjrlnlrbis y pmcriocgcljirsg i `ghmrir bis l pbg`gotijlmogs cg Zuo y i lojmrpmrir susprmplis nlnblmtgjis/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    10/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-9: Qfloi 91 cg 997

    Cg iqu sg cgcujg qug @ljrmsmdt tlgog bi blngrtic cg l pgclr bgfib gotg gb cgsirrmbbmcg juibqulgr l pbg`gotijlo cg /Ogt locgpgoclgotg/ Cgpgoclgocm cg bi gstritgfli cg@ljrmsmdt" yi sg vgr sl bi pbitidmr i /Ogt gs rgib`gotg `ubtlpbitidmr i/

    Go jmotristg" bis bljgojlis ijtuibgs cg H ivi mdrgjgo cms friocgs vgotihis8

    i, Qgr ltgo" slo rgsquljljlms bgfibgs" qug eiyi l pbg`gotijlmogs blnrgs m cgjclfm inlgrtm cg bi pbitidmr i cg H ivi" bm juib firiotlzi bi supgrvlvgojlicg H ivi iuoqug Zuo qugnriri %g prgsis ujem s friocgs eio jicm;pis yi bi pmji go qug bi cgdloljlo cg frio g`prgsi gri Cjgsg cgiqugbbi g`prgsi cg`islicm friocg jm`m piri qugnrir,/ Lojbusm sl Zuoji nliri su gstritgfli rgspgjtm i H ivi" gsis l pbg gotijlmogslocgpgoclgotgs pmcrio sgfulr gxlstlgocm/

    n, Divmrgjg qug cgsirrmbbicmrgs" lovgstlficmrgs y usuirlms sg lovmbujrgo gogb cgsirrmbbm cg bis duturis vgrslmogs cg H ivi/

    3, Cgsjirfi clo`lji cg jbisgs/ H ivi pgr ltg cgsjirfir bms nytgjmcgs cg uoi

    jbisg `gcliotg uoi jmogxlo cg rgc" jrgir uoi lostiojli cg bi jbisg g lojmrpmrir gb ougvmmnhgtm i bi ipbljijlo go ghgjujlo/ Go jmosgjugojli" bis ipbljijlmogs go rgc pugcgoclstrlnulrsg cg dmr i `uy sgojlbbi % gcliotg sgrvlcmrgs wgn cmocg sg ib ijgoio bmsnytgjmcgs"oivgficmrgs y ippbgts, y smo jipijgs cg lojmrpmrir mnhgtms cgsjmomjlcms gogo tlg pm cg jm`plbijlo/ J++ om mdrgjg uois jipijlcicgs clo ljis jm m bis cg H ivi/Z`ibbtibk" s; pgrm om mdrgjg tiotis dijlblcicgs piri bi prmfri`ijlo go rgc/

    7, Lojbuslo gstocir cg virlis IQL piri bi prmfri`ijlo go rgc/ Gb piqugtghivi/ogt mdrgjg uoi IQL cg ibtm olvgb piri trinihir jmo gb prmtmjmbm ESSQ" jmo bms W^B yjmo smjkgts/

    Bi pbitidmr i /Ogt ti nlo prmpmrjlmoi uoi" smspgjemsi`gotg pirgjlci i bi cg H ivi/

    Qmr ghg pbm" juibqulgr prmfri icmr cg H ivi qug usg /Ogt gosgfulci sg cir jugoti cg bmsg`ghiotgs qug smo bis jbisgs Zystg`/Ogt/Zmjkgts/SJQJblgot y hivi/ogt/Zmjkgt/ Biismjlijlo gotrg dbuhms y smjkgts qug usihivi/ogt piri trios ltlr y rgjlnlr citms ti`nlo eislcm icmptici pmr /Ogt/

    Icg`s cghivi/ogt" bi vgrslo gstocir cg H ivi lojmrpmri gb piqugtghivi/r`l" qugeijg pmslnbg bbi`ir i `tmcms cg mnhgtms go mrcgoicmrgs rg`mtms jm`m sl gstuvlgrio gouom bmjib" y pgr ltg trinihir jmo JM^NI %Jm``mo Mnhgjt ^gqugst Nrmkgr Irjeltgjturg8irqultgjturi jm`o cg lotgr gclijlo cg smbljltucgs cg mnhgtms," uoi gspgjldljijlo piriirqultgjturis clstrlnulcis cg mnhgtms cgdlolci pmr gb M@F %Mnhgjt @ioifg`got Frmup"Frupm cg fgstlo cg mnhgtms,/

    Bi pbitidmr i /Ogt lojbuyg su /Ogt ^g`mtlof/" uoi pbitidmr i cg mnhgtms clstrlnulcms

    jm`pirinbg" go gsgojli" i JM^NI m ^@L/ Zu duojlmoi lgotm lotgrom fuirci pirgjlcm jmogb cg ^@L/

    J++ pugcg trinihir jmo smjkgts y jmo JM^NI; pgrm gxlfg uo `iymr gsdugrzm piri gbprmfri`icmr8 bi bgflnlblcic cgb jclfm gs `gomr y bis IQL tricljlmoibgs om gsto tiomrlgoticis i mnhgtms jm m bis cg H ivi/ Go gb jism cg /Ogt" @ljrmsmdt slg prg ei rgjeizicmJM^NI y bi gstiocirlzijlo qug supmog" lojbusm juiocm om gxlstio bms sgrvljlms wgn/Juiocm JM^NI jm`goz" @ljrmsmdt ipmst pmr su prmpli tgjombmfi cg mnhgtmsclstrlnulcms %CJM@," lcogi piri trinihir go gotmroms Vlocmws/ CJM@ sg l pbg`gotti`nlo go gotmroms WOLU" pgrm om fmz cg ijgptijlo gotrg bms cgsirrmbbicmrgs8 bi IQLmrlgotici i mnhgtms cg JM^NI slg`prg ei slcm supgrlmr i CJM@/ Zuo" go ji`nlm"slg`prg ei ipmsticm pmr JM^NI8 sus smbujlmogs g`prgsirlibgs sg nisio go gstiirqultgjturi m smo jm`pitlnbgs jmo gbbi/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    11/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-9: Qfloi 99 cg 997

    4, Hivi sg `iotlgog ib ci go juiotm i tgocgojlis go tgjombmfis clstrlnulcis/Iuoqug @ljrmsmdt ipmst pmr bis tgjombmfis cg sgrvljlms wgn iotgs qug Zuo" iemri H iviclspmog cg uoi sgrlg cg egrri lgotis gxjgbgotgs piri trinihir jmo gstis ougvistgjombmfis/

    6, Jm`uolcic cg usuirlms/ H ivi clspmog cg uoi visti jm`uolcic" gspmotogi g

    lotgroijlmoib" cg usuirlms prgmjupicms pmr clduoclr gb bgofuihg y pmr pgrdgjjlmoirbm/ Om `ggxtlgocm s ib rgspgjtm" pugs hiviElspiom jmostltuyg nugoi prugni cg gbbm/

    5, Hivi sg gosgi go `ujeis uolvgrslcicgs y gsjugbis cg Lodmr`tlji/ Cgegjem" stg gs gb mtlvm pmr qug @ljrmsmdt lojbuyg uoi jmpli cg H ivi %Tlsuib H *, go supbitidmr i /Ogt8 om qulgrg vgrsg gxjbulci cg bis uolvgrslcicgs/ Jm`m prugni" sg pugcgbggr gstm go bi punbljlcic cg Tlsuib Ztuclm /Ogt >1178 .Tlsuib H *>117 Gxprgss Gcltlmo ls iol pbg gotitlmo md teg H ivi biofuifg ioc ls io lcgib tmmb dmr ioymog wlte prlmr H ivigxpgrlgojg mr stucgots uslof H ivi lo sjemmb/ Qmr sl ibfulgo sg slgotg tgoticm i usir Tlsuib

    H *" om gst cg s locljir qug tmcis bis omvgcicgs qug sg eio lcm lotrmcujlgocm cgscg bivgrslo 9/9/3 cg H ivi %OLM" `ghmris piri frdljms >C" :C" gtj/, om gxlstgo go gsi rpblji

    iotljuici cg H ivi/

    711 cbirgs bi vgrslo Gotgrprlsg Irjeltgjt cg Tlsuib Ztuclm /Ogt >11:, yqug sbm gst clspmolnbg piri gotmroms Vlocmws/ Nmrbioc tlgog piri /Ogt su J*Nulbcgr" uoigxjgbgotg egrri lgoti ti`nlo `uy jiri %uoms >711 cbirgs bi vgrslo Irjeltgjt,/ %Gstmsprgjlms smo piri pirtljubirgs y sg eio jmosubticm go mjtunrg cg >113/,

    Gxlstgo egrri lgotis cg jclfm inlgrtm piri trinihir jmo /Ogt; pmr ghg`pbm goettp8www/ljseirpjmcg/ogtMpgoZmurjgZC sg pugcg gojmotrir uo LCG %LotgfritgcCgvgbmpg`got Govlrmo`got" gotmrom lotgfricm cg cgsirrmbbm, piri Tlsuib Nislj /Ogt y J*bbi`icm ZeirpCgvgbmp" fritultm y cg jclfm inlgrtm %bljgojli FQB,/ Jm`m ustgc ls`mpugcg jm`prmnir" tiotm gstg ZeirpCgvgbmpgr jm`m mtrms LCG cg jclfm inlgrtm qugcio`uy bghms cg lfuibir bis duojlmogs cg Tlsuib Ztuclm /Ogt m cg ibfuoms gotmroms cgcgsirrmbbm piri H ivi %go pirtg pmrqug H ivi bbgvi s tlg pm go gb grjicm qug /Ogt y gopirtg pmrqug H ivi gs ipmyicm inlgrti gotg pmr `ujeis g`prgsis" bm qug dm goti bijm`pgtltlvlcic go juiotm i egrri lgotis,/

    91, Gstinlblcic cg Hivi %jm`m bgofuihg y jm`m pbitidmr`i,/ Juibqulgr jclfmgsjrltm go Hivi eijg uoms ims slfug duojlmoiocm go bis vgrslmogs `s rgjlgotgs cg H ivi"y gs nistiotg prmninbg qug bm ls m sujgci go gb duturm/ Zuo lotgoti qug bi pbitidmr i`ghmrg slo gbl loir bi jm`pitlnlblcic jmo bis vgrslmogs iotgrlmrgs/

    Gb jmotristg jmo @ljrmsmdt gs jbirm8 bis tgjombmfis qug ei pitrmjloicm @ljrmsmdt eioslcm `ujeis" y jisl slg`prg lojm`pitlnbgs jmo bis gbgflcis iotgs piri sus prmcujtms/Juibqulgr g`prgsi qug eiyi jmodlicm" pmr ghg`pbm" go Tlsuib Nislj 4/1" piri cgsirrmbbir

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    12/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-9: Qfloi 9> cg 997

    sus ipbljijlmogs lotgrois" sg einr cicm yi jugoti cg qug gb clogrm lovgrtlcm go dmr ijloy go cgsirrmbbm cg oici sgrvlr piri pisir bi ipbljijlo i /Ogt %bis ipbljijlmogs cgngrosgr rggsjrltis cgscg jgrm" sibvm qug sgio trlvlibgs,/

    Zl nlgo gs jlgrtm qug bis tgjombmfis lodmr tljis iviozio i pisms iflfioticms y cgdmr i lojlgrti" ti`nlo bm gs qug `ujeis g`prgsis om pugcgo pgr ltlrsg tlrir i bi nisurisus ipbljijlmogs y g pgzir cg jgrm/ Eisti gb `m gotm" H ivi ei slcm smrprgocgotg gotggstinbg %jmo ghmris jmotlouis" gsm s, go uo uocm ji`nliotg/

    Gb dloib cg bi lotrmcujjlo om `g jmrrgspmocg i " slom i bi rgjgpjlmolsti cgb emtgb cgBuxg`nurfm cmocg `g emspgcm iemri/ @lgotris ibtgroini bi gsjrlturi cgb tutmrlib jmo

    lricis i bi lbu loici jibbg H msgpe H uojk" eg rgjmrcicm qug juiocm g rgflstr go gb

    emtgb" eijg juitrm cis" bi rgjgpjlmolsti `g clhm go driojs8 Gst ustgc go uo pis `uypgqugm" pgrm iqu oms jingo `ujems bufirgs lotgrgsiotgs/ Gspgrm qug ibfm pirgjlcmpugci cgjlrsg cg gstg tutmrlib" pgsg i sus `ujems cgdgjtms y m lslmogs/ Nugois omjegs/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    13/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi 9: cg 993

    >/ DWOCI@GOSMZ CG ^GCGZ

    Eiy uoi pibinri qug inuoci go juibqulgr blnrm m irtjubm smnrg rgcgs8 prmtmjmbm/ Jmogbbi" sg cgslfoi uoi cgsjrlpjlo m gspgjldljijlo cg jm`m cgngo jm`uoljirsg cmsjm`pmogotgs cg rgc" yi sgio cg eircwirg m cg smdtwirg/

    Bi elstmrli cg bis tgbgjm`uoljijlmogs slg`prg ei clsjurrlcm piribgbi i bi cg bmsprmtmjmbms" iuoqug stms om slg`prg eio slcm tjoljms/ Is" pmr ghg`pbm" juiocm sglostibirmo bms prl grms tgbdmoms go Gsticms Wolcms" bms usuirlms om sinio qu eijgrjuiocm cgsjmbfinio gb iurljubir/ Go jmosgjugojli" pgr iogjio `ucms; `ujems"godicicms pmr om singr j`m mnrir" jmbfinio gb iurljubir y hurinio mclm gtgrom ib ougvmlovgotm/ Ib dloib" sg cgjlcl qug bis tgbgdmolstis cgnio cgjlr jmo i`inlblcic Egbbm"spgiklof %Embi" ib einbi, juiocm ibfulgo gstinbgji jm`uoljijlo/ Bugfm" cgjio ibusuirlm qug tgoi uoi bbi`ici m bg prgfuotinio i qu o`grm qugri bbi`ir/

    Gstg ghg`pbm" qug iemri pirgjg bghiom g lofgoum" lbustri bi jmosgjugojli cg bi dibticg prmtmjmbms8 lojm`uoljijlo/ Zlo uo prmtmjmbm tio sgojlbbm jm`m Clfi Embi" ib einbijuiocm ibfulgo cgsjugbfug uo iurljubir" om eini jm`uoljijlo gotrg gb g lsmr y gb

    rgjgptmr/Bms prmtmjmbms tjoljms cg jm`uoljijlmogs sugbgo sgr cldjlbgs cg gotgocgr" pmrqugsg rgcijtio cg dmr i prgjlsi" jmo gb dlo cg gvltir bis i`nlfgcicgs/ Qmr bm fgogrib" bmsprmtmjmbms om gspgjldljio olofuoi l pbg`gotijlo jmojrgti8 sg pugcgo `itgrliblzir cg

    uy clvgrsis iogris/Go tgbgjm`uoljijlmogs" uoi di`lbli cg prmtmjmbms gs uo jmohuotm cg prmtmjmbms qug

    trinihio cg `iogri jmohuoti piri govlir citms cg uo clspmsltlvm i mtrm/ Go gb jismjmojrgtm cg bis rgcgs cg mrcgoicmrgs %juibqulgr mrcgoicmr jmogjticm i uoi rgc gs uoomcm cg gbbi," uoi di lbli cg prmtmjmbms gs uo jmohuotm cg rgfbis" sgjugojlis" dmr itms cg`gosihg y prmjgcl lgotms qug bms mrcgoicmrgs cg uoi rgc pugcgo usir y jm`prgocgrjuiocm lotgrji`nlio citms/

    Bi di lbli cg prmtmjmbms cg rgc `s jmomjlci gs SJQLQ8 Lotgrogt sg nisi go gbbi/Gsti di lbli gs locgpgoclgotg cg bi pbitidmr i usici m cgb vgocgcmr8 pgr ltg supgrir bmsinls`ms qug `gclio gotrg mrcgoicmrgs" rgcgs y slstg`is mpgritlvms cg clstlotmsdinrljiotgs/

    @ujems prmtmjmbms cg gsti di lbli sg eio l pbg`goticm piri pgqugms clspmsltlvms%ifgocis gbgjtroljis" tgbdmoms `vlbgs," gbgjtrmcm`stljms" mrcgoicmrgs pgrsmoibgs ysupgrmrcgoicmrgs/ Qmr ghg`pbm" juibqulgr dinrljiotg cg tgbdmoms qug pgr ltio ijjgcgr iLotgrogt l pbg`goti bi di lbli cg prmtmjmbms SJQLQ/ Bi l pbg`gotijlo cgpgocgr cgbeircwirg gspgjdljm cg bms tgbdmoms; pgrm" iuo is" pgr ltlr bi jm`uoljijlo jmojuibqulgr mtrm clspmsltlvm uoi gstijlo cg trinihm" pmofi`ms pmr jism qug tgofi goduojlmoi lgotm ibfuoi l pbg`gotijlo cg bi di lbli SJQLQ/ Bis l pbg`gotijlmogs sgro

    insmbuti`gotg clstlotis %go juiotm i eircwirg y smdtwirg" gsjisi rgbijlo fuircio uotgbdmom y uoi gstijlo cg trinihm,; pgrm pgr ltlro gb lotgrji`nlm cg lodmr ijlo i trivscg Lotgrogt/ Cg egjem" Lotgrogt gs bi uolo cg lbgs cg rgcgs egtgrmfogis" jmo clstlotistmpmbmfis y `gclms cg trios lslo8 frijlis i qug tmcis l pbg`gotio bi di lbli SJQLQ"pugcgo lotgrmpgrir/

    Bms prmtmjmbms `s jmomjlcms cg bi di lbli SJQLQ sg `ugstrio go bi dlfuri 9/ Gbgstuclm cg tmcms gbbms gxjgcg jmo jrgjgs gb prmpsltm cgb tutmrlib/ Cg dmr i sl pbldljici" sgtritiro iqu bms prmtmjmbms LQ" SJQ y WCQ/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    14/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi 93 cg 993

    Dlfuri 9/ Bi di`lbli cg prmtmjmbms SJQLQ

    Bms jm`pmogotgs cg uoi di lbli cg prmtmjmbms sugbgo unljirsg go jipis qug ifrupioduojlmogs jm`uogs" cg `mcm qug gb mnhgtlvm jm`o cg bi jm`uoljijlo gotrg cmsmrcgoicmrgs sg bmfri `gcliotg bi jmbinmrijlo gotrg tmcis bis jipis/ Qmr ghg`pbm" pirgjg

    bfljm ifrupir gb prmtmjmbm ESSQ go uoi jipi clstloti i bi cg bms prmtmjmbms qug trinihiojmo vmbtihgs" pugs sus duojlmogs smo `uy cldgrgotgs/ Gb prl grm smbljlti uoi lodmr ijlojmo uo dmr itm cgtgr loicm %ES@B,; bms mtrms gspgjldljio jm`m cgngo trios ltlrsg bmsjgrms y uoms i trivs cg bms jinbgs gbjtrljms/

    SJQLQ sg clvlcg go juitrm jipis8

    Bi jipi cg ipbljijlo/ Gs bi jipi cg olvgb `s ibtm; jmotlgog tmcms bmsprmtmjmbms qug bis ipbljijlmogs usio clrgjti`gotg piri jm`uoljirsg jmomtris ipbljijlmogs/

    Bi jipi cg triospmrtg/ Zg gojirfi cg gstinbgjgr gb prmjgsm cgjm`uoljijlo gotrg cms omcms/ Qmr gxtgoslo" sg gojirfi cg gstinbgjgr

    bis jmogxlmogs" triosdgrlr bms citms" jgrrir bis jmogxlmogs" gtj/

    MZL

    ZgsslmoQrgsgotitlmoIppbljitlmo

    Sgbogt

    DSQ%Dlbg

    SriosdgrQrmtmjmb,

    SDSQ%SrlvlibDlbg

    SriosdgrQrmtmjmb,

    Z@SQ%Zl pbg

    @ilbSriosdgrQrmtmjmb,

    BQC%Blog

    QrlotgrCig mo,

    ODZ%Ogtwmrk

    DlbgZystg ,

    ZO@Q%Zl pbgOgtwmrk

    @ioifg`got

    Qrmtmjmb,

    UVlocmw

    Mtegrs

    Sriospmrt

    Ogtwmrk

    Qeys

    ljibCitiBlok

    SJQLQ Qrmtmjmb Zultg

    WCQ

    %Wsgr Citifri Qrmtmjmb,

    Gtegrogt Smkgo lofDCCL

    %Dlnrg ClstrlnutgcCiti Lotgrdijg,

    Dri`g ^gbiy

    SJQ

    %Srios lsslmo Jmotrmb Qrmtmjmb,

    LJ@Q%Lotgrogt Jmotrmb

    @gssifg Qrmtmjmb,

    NmmtQ%Nmmtstrip Qrmtmjmb,

    I Q%Iccrgss ^gsmbutlmo

    Qrmtmjmb,

    LQ%Lotgrogt Qrmtmjmb,

    ^I^Q% gvgrsg Iccrgss

    ^gsmbutlmo Qrmtmjmb,

    Mtegrs

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    15/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi 97 cg 993

    Bi jipi cg rgc m jipi LQ/ Qrmpmrjlmoi bms gclms pmr bms juibgs uo omcmpugcg govlir piqugtgs cg citms %juym dmr itm gspgjldlji uo prmtmjmbm cggsti jipi, i trivs cg uoi rgc" cg `iogri locgpgoclgotg uoms cg mtrms/Gsti jipi sg gojirfi cg goji loir cg dmr i loclvlcuib jici piqugtg;cg ie qug bms piqugtgs pugcio bbgfir i su cgstlom go uo mrcgo clstlotmcgb qug dugrmo govlicms/

    Bi jipi cg gobijg/ Zg gojirfi cg govlir dslji`gotg bms piqugtgs cgcitms cg uo omcm i mtrm y cg bms cgtibbgs jmojgrolgotgs i birgprgsgotijlo cg bms piqugtgs go gb `gclm dsljm cg trios lslo/ Gstijipi ic ltg `btlpbgs prmtmjmbms" pugs SJQLQ duojlmoi smnrg rgcgs cg`uy clstlotis oituribgzis %Gtegrogt" cg dlnri ptlji" loib`nrljis///," yjici uoi tlgog su prmplm prmtmjmbm cg gobijg/

    Gb prmtmjmbm LQ %Lotgrogt Qrmtmjmb" prmtmjmbm cg Lotgrogt, gs gb prmtmjmbm cg rgc utlblzicmpiri govlir citms gotrg bms mrcgoicmrgs jmogjticms i Lotgrogt m qug dmr io pirtg cg

    lotriogts %rgcgs nisicis go bms ls`ms prmtmjmbms SJQLQ qug usi Lotgrogt,/ Zu duojlonslji jmoslstg go govlir citms i trivs cg Lotgrogt go piqugtgs %citifri`is LQ, qugjmotlgogo cg uom i lb qulolgotms nytgs/ LQ gs uo prmtmjmbm slo jmogxlo8 om lotgrji`nlilodmr ijlo cg jmotrmb iotgs cg govlir citms ib cgstlom ol curiotg gb govm/ Gojmosgjugojli" om firiotlzi qug bms citifri`is LQ sg gotrgfugo go gb mrcgo go qug sggovlirmo" ol slqulgri qug sg gotrgfugo/ Bms piqugtgs cg citms pugcgo pgrcgrsg m bbgfirdugri cg mrcgo; go gstms jisms" smo mtrms bms prmtmjmbms gojirficms cg irrgfbir gbcgsnirihustg" pugs LQ jirgjg cg `gclms piri cgtgjtir bms grrmrgs m jmrrgflrbms/

    Smcm citifri i LQ jmosti cg uoi jingjgri y cg uoi pirtg cg citms/ Gb gsqug i cgbi jingjgri cg uo citifri`i LQ ipirgjg go bi dlfuri >/

    Dlfuri >/ Jingjgri cg uo citifri`i LQ %v3,/ Sris gbbi vlgogo bms citms/

    :> nlts

    Bmofltuc tmtib

    Clrgjjlo LQ cgb g`lsmr

    Clrgjjlo LQ cgb cgstlom

    Mpjlmogs %jgrm m `s pibinris cg :> nlts,

    Jegjksu` cg bi jingjgriQrmtmjmbmSlg`pm cg vlci

    Lcgotldljijlo @

    D

    C

    D Mddsgt cgb drif`gotm

    Slpm sgrvljlmLEBTgrslo

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    16/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi 94 cg 993

    Smcms bms mrcgoicmrgs qug sg jm uoljio jmo gstg prmtmjmbm sg lcgotldljio gcliotguoi m `s clrgjjlmogs LQ/ Qmr iemri" bi vgrslo go vlfmr cg gstg prmtmjmbm gs bi LQv3 qugutlblzi 3 nytgs %:> nlts, piri jici clrgjjlo LQ/ Go dmr`itm nloirlm" bis clrgjjlmogs LQ sgrgprgsgotio jm`m juitrm mjtgtms sgpiricms pmr puotms %pmr ghg`pbm"91111999/91911919/11911199/99991111,/ Go dmr itm cgjl ib" uoi clrgjjlo LQ gstdmr ici pmr 3 o`grms gotgrms sgpiricms pmr puotms" slgocm jici gotgrm `gomr m lfuib i>77 %pmr ghg`pbm" 9:7/947/:7/>31,/

    Jm`m pugcg vgrsg go bi iotgrlmr dlfuri" jici piqugtg LQ tlgog cms ji`pms jmoclrgjjlmogs LQ8 uoi jmrrgspmocg i bi LQ cgb mrcgoicmr g lsmr; bi mtri" i bi LQ cgb mrcgoicmrcg cgstlom/ Zl uo citifri`i LQ plgrcg bi lodmr ijlo cgb ji`pm Clrgjjlo LQ cg cgstlom"gb prmtmjmbm LQ gs lojipiz cg gotrgfirbm y ijini cgsjirtocmbm %juiocm tgr log gb tlg`pmcg vlci cgb citifri`i" sgr gbl loicm; is sg gvlti smnrgjirfir bis rgcgs jmo piqugtgsgrriotgs,/

    Woi clrgjjlo LQ ti`nlo pugcg rgprgsgotirsg `gcliotg uo W^B %Woldmr` ^gsmurjgBmjitmr" bmjiblzicmr uoldmr g cg rgjursms," qug vlgog i sgr uo puotgrm i uo rgjursm cg biVgn %su clrgjjlo,/ Bi prlojlpib vgotihi cg bms W^B drgotg i bis clrgjjlmogs LQ gs qug smo

    `ujem `s sgojlbbms cg rgjmrcir/ Is" ettp8www/fmmfbg/gs gs `ujem `s djlb cgrgjmrcir %y cg iomtir, qug >94/>:

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    17/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi 96 cg 993

    Bi `iymri cg bis ipbljijlmogs qug sg ghgjutio go Lotgrogt %VVV" DSQ" Sgbogt"jmrrgm gbgjtroljm" gtj/, jmrrgspmocgo i uoi irqultgjturi cgom loici jblgotg-sgrvlcmr/ Zgcljg qug uoi ipbljijlo lodmr tlji cgdlolci jm`m uo jmohuotm cg prmfri`is y citms

    tlgog uoi gstrujturi jblgotg-sgrvlcmr juiocm bms prmfri`is y citms qug bi jmostltuygo sggojugotrio rgpirtlcms gotrg cms %m s, mrcgoicmrgs/Go uoi irqultgjturi jblgotg-sgrvlcmr" uo mrcgoicmr %cgom loicm jblgotg, jmotlgog bi

    pirtg cg bi ipbljijlo qug sg gojirfi cg bi fgstlo cg bi lotgrijjlo lo`gcliti jmo gbusuirlm y" pmslnbg`gotg" cg pirtg cg bi bflji y cg bms citms cg bi ipbljijlo/ Bismpgrijlmogs m bms citms qug om rgslcgo go gb jblgotg pgrm qug stg ogjgslti sg smbljltio i bimtri pirtg cg bi ipbljijlo `gcliotg gb prmtmjmbm cg ipbljijlo jmrrgspmoclgotg/ Gsti pirtgsg gojugotri go uo mrcgoicmr jm`pirtlcm %gb sgrvlcmr," pmr bm jm`o `s pmtgotg y cg`iymr jipijlcic qug gb jblgotg" y gst dmr ici pmr gb rgstm cg citms y duojlmogs cg biipbljijlo lodmr tlji/ Gstg gqulpm sg gojirfi cg sgrvlr gs cgjlr" itgocgr y jmotgstirbis pgtljlmogs rgiblzicis pmr bms jblgotgs/ Bms tr loms jblgotg y sgrvlcmrsg g`pbgio tiotm

    piri rgdgrlrsg i bms mrcgoicmrgs jm`m i bis pirtgs cg bi ipbljijlo/Itgoclgocm i bi unljijlo cg bi bflji y cg bms citms cg bi ipbljijlo" sg pugcgogstinbgjgr clstlotis jbisldljijlmogs cgotrm cg gsti irqultgjturi %bflji clstrlnulci"prgsgotijlo cgsjgotriblzici" bflji cgsjgotriblzici," pgrm uo gstuclm go cgtibbg om gsogjgsirlm/

    Omti8 Go uoi rgc" uo rgjursm gs juibqulgr gotlcic" dslji m bflji"susjgptlnbg cg tgogr lotgrs piri gb usuirlm/ Qugcg sgr uo irjelvm" uocmju`gotm" uo vcgm" uo irjelvm cg `slji" uoi jmosubti i uoi nisgcg citms" uo clsjm curm jm`pirtlcm" uoi l prgsmri jm`pirtlci" gtj/

    Bms rgjursms om tlgogo pmr qu gstir ib ijgoicms go bi rgc %gs cgjlr"go bms clsjms curms cg bms mrcgoicmrgs qug bi jm`pmogo," slom qugpugcgo jrgirsg clo lji`gotg jm`m rgspugsti i bis pgtljlmogs cgbms usuirlms/ Qmr ghg`pbm" juiocm sg eijg uoi jmosubti go gbnusjicmr Fmmfbg" bi pfloi wgn qug sg fgogri om gxlstiprgvli`gotg8 sg ei jrgicm jm`m rgspugsti i bi jmosubti/Bi gstrujturi cg Lotgrogt gs tio inlgrti y dbgxlnbg qug pgr ltglojmrpmrir ougvms prmtmjmbms juiocm sg ogjgsltio ougvms rgjursms/ Zlibfulgo lovgoti uo ougvm rgjursm" sg pugcgo lojbulr prmtmjmbms ougvmsgo bi plbi SJQLQ" cg `mcm qug pgr ltio trinihir jmo gb ougvmrgjursm/ Qmr ghg`pbm" bi ogjgslcic cg usir elpgrtgxtm piri dijlbltir gb

    ijjgsm i bi lodmr ijlo bbgv i lovgotir gb prmtmjmbm ESSQ y gbbgofuihg cg dmr itm ES@B/ Bis pflois wgn" qug iemri dmr io pirtgcg bi gxpgrlgojli lo`gcliti cg juibqulgr usuirlm cg bi ^gc" dugrmo ibprlojlplm uo ougvm rgjursm cg gbbi/ Jmo gb tlg`pm" clgrmo bufir i biVgn/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    18/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi 95 cg 993

    Dlfuri :/ Woi ipbljijlo jblgotg-sgrvlcmr cg bflji clstrlnulci/

    Wo ghg`pbm tpljm cg irqultgjturi jblgotg-sgrvlcmr bm jmostltuyg uo sgrvlcmr wgn y uooivgficmr wgn/ Gb mrcgoicmr jblgotg gs gb cgb usuirlm qug cgsgi ijjgcgr i uoi pfloiwgn y tlgog go ghgjujlo uo prmfri`i jblgotg %uo oivgficmr wgn" go gstg jism,/ Juiocmuo usuirlm lotrmcujg uoi clrgjjlo wgn go gb oivgficmr" stg smbljlti" i trivs cgbprmtmjmbm ESSQ" bi pfloi wgn i bi ipbljijlo cg sgrvlcmr wgn qug sg ghgjuti go gbmrcgoicmr sgrvlcmr cmocg rgslcg bi pfloi/ Bi ipbljijlo cg sgrvlcmr wgn govi bi pfloi

    pmr Lotgrogt i bi ipbljijlo jblgotg %gb oivgficmr, qug bi ei smbljlticm/ Woi vgz rgjlnlci" gboivgficmr bi ugstri ib usuirlm/

    Woi ipbljijlo jblgotg-sgrvlcmr cg

    bflji clstrlnulci

    Bflji cg ipbljijlo Bflji gbg`gotib cg ipbljijloLotgrdiz cg usuirlm

    NC

    Go gstg tlpm cg ipbljijlmogs" gb jblgotg sg gojirfi cg bi lotgrijjlo jmo gbusuirlm" cg `mstrir bms rgsubticms cg sus pgtljlmogs y cg jmotrmbir bi pirtgnslji cg bi bflji cg bi ipbljijlo %jm`prmnijlo cg ji`pms" lotrmcujjlocg vibmrgs go bms ji`pms mnblfitmrlms" gtj/,/Gb sgrvlcmr ijjgcg i bi nisg cg citms y sg gojirfi cg bi pirtg l`pmrtiotg cgbi bflji cg bi ipbljijlo %islfoijlo i jici jblgotg cg uo cgsjugotmvlojubicm i su vmbu`go cg jm`pris" pmr ghg`pbm,/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    19/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi 9< cg 993

    Dlfuri 3/ Gsqug`i fgogrib cg bis ipbljijlmogs cg tlpm jblgotg-sgrvlcmr

    Dlfuri 7/ Gsqug`i `s cgtibbicm cg bis ipbljijlmogs cg tlpm jblgotg-sgrvlcmr

    Jblgotg Zgrvlcmr ^gc

    Woi ipbljijlo tplji cg rgc8 jblgotg y sgrvlcmr

    Jblgotg Zgrvlcmr ^gc

    Woi ipbljijlo tplji cg rgc8 jblgotg y sgrvlcmr

    Jblgotg

    Jblgotg

    Jblgotg

    Zgrvlcmr

    ///

    ///

    Bms sgrvlcmrgs trinihio sl`ubtogi`gotg jmo virlms jblgotgs

    Jblgotg

    Jblgotg

    Jblgotg

    Zgrvlcmr

    ///

    ///

    Bms sgrvlcmrgs trinihio sl`ubtogi`gotg jmo virlms jblgotgs

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    20/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi >1 cg 993

    Dlfuri 4/ Gsqug`i cg uoi jm`uoljijlo ESSQ gstocir" qug slfug gb `mcgbmjblgotg-sgrvlcmr

    Dlfuri 6/ Bi Vgn" nisici go ESSQ" gs bi ipbljijlo clstrlnulci cg tlpm jblgotg-sgrvlcmr `s i`pbli y jmomjlci

    Ib lfuib qug gb prmtmjmbm LQ pgr ltg bi jm`uoljijlo gotrg mrcgoicmrgs cg Lotgrogt" bmspugrtms pgr ltgo bi jm`uoljijlo gotrg bis ipbljijlmogs qug sg ghgjutio go bmsmrcgoicmrgs %tmci ipbljijlo prmpmrjlmoi uom m `s sgrvljlms,/ Go gsgojli" uo pugrtm gsuoi clrgjjlo cg 94 nlts ismjlici" pmr bm jm`o" i uoi ipbljijlo m sgrvljlm/ Woi lotgrdizcg mrcgoicmr cg rgc gst clvlclci bflji`gotg go 477:4 pugrtms %bms prl grms 91>3 sugbgo

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    21/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi >9 cg 993

    rgsgrvirsg piri sgrvljlms gstocirgs y prmjgsms cgb slstg`i mpgritlvm,/ Bi clvlslo om gsdslji8 gstms pugrtms om tlgogo oici qug vgr jmo bms pugrtms dsljms cg eircwirg/

    Go uoi irqultgjturi jblgotg-sgrvlcmr %pmr ghg`pbm" gb ghg`pbm iotgrlmr cgb sgrvlcmr wgny gb oivgficmr jblgotg," gb prmfri`i sgrvlcmr pgr iogjg i bi gsjujei cg pgtljlmogs cg bmsjblgotgs i trivs cg bms pugrtms qug tlgog ijtlvms/ Bi lodmr ijlo m bms sgrvljlms smbljlticmssmo govlicms pmr gb sgrvlcmr i bms jblgotgs" go jmojrgtm i bms pugrtms qug stms eioutlblzicm piri rgiblzir bis pgtljlmogs/ Qmr bm jm`o" bms sgrvljlms cg Lotgrogt tlgogo pugrtmsgstocir pmr cgdgjtm/ Qmr ghg`pbm" gb prmtmjmbm ESSQ utlblzi gb pugrtm gstocir 51" y gbprmtmjmbm DSQ" gb pugrtm gstocir >9/ Qmr gbbm" om gs prgjlsm gsjrlnlr go uo oivgficmrettp8www/ilcl i/gs8>9" nisti gsjrlnlr dtp8www/ilcl i/gs/

    Go uoi jm`uoljijlo i trivs cg Lotgrogt" bi clrgjjlo LQ %cg :> nlts, lcgotldlji cg`iogri olji gb mrcgoicmr m omcm ib qug sg clrlfg gb gosihg y gb o`grm cg pugrtm %cg 94nlts, lcgotldlji i qu pugrtm %gs cgjlr" i qu ipbljijlo m sgrvljlm, cgngo govlirsg bms citms/

    Dlfuri 5/ Wsm sl`ubtogm cg virlms pugrtms

    Gs pmslnbg utlblzir pugrtms clstlotms cg bms gstocirgs piri bms sgrvljlms cg Lotgrogt" sl

    nlgo om gs bm einltuib/ Zg pmcri" pmr ghg`pbm" islfoir gb pugrtm >>65 ib prmtmjmbm ESSQ" ygb pugrtm 4674 ib prmtmjmbm DSQ/ Go gstg jism" bms jblgotgs ogjgsltirio jmomjgr bms ougvmspugrtms ismjlicms i jici sgrvljlm/ Zl om" gb gspgjtrm cg bi lojm`uoljijlo pbiogiri cgougvm/

    Jmogxlo i birgc

    Qugrtm>7

    51

    4533

    Jblgotg

    G-`ilb

    Oivgficmrwgn

    Wo prmfri`iHivi

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    22/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi >> cg 993

    Dlfuri

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    23/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi >: cg 993

    Cgnlcm ib gobijg gxlstgotg gotrg gb g lsmr y gb rgjgptmr curiotg uoi jm`uoljijloSJQ" gstg prmtmjmbm sugbg jm pirirsg jmo gb sgrvljlm tgbgdoljm8 sg gstinbgjg bi jmogxlo"sg triosdlgrgo bms citms y" pmr btl m" sg jlgrri bi jmogxlo/

    Dlfuri 91/ Gsqug`i cg uo citifri`i SJQ/ Gb ji`pm lodgrlmr ibngrfi bms citms/ Go gbprmjgsm cg govm cg bi lodmr`ijlo gotrg mrcgoicmrgs" bms citifri`is SJQ sg

    gojipsubio go citifri`is LQ

    Dlfuri 99/ Gsqug`i cgb duojlmoi`lgotm cgb prmtmjmbm SJQ

    @gosihg @gosihg

    Jipi cg rgc

    Zg clvlcg gb `gosihg y sggovio bms drif`gotms

    %piqugtgs m citifri`is,

    Zg ivgrlfui gb `ghmrsunji`lom piri

    bbgfir ib cgstlom y sggovio bms piqugtgs

    Zg ivgrlfui gb `ghmrsunji`lom piri

    bbgfir ib cgstlom y sggovio bms piqugtgs

    Zg rgjlngo bmspiqugtgs clrlflcms i

    gstg mrcgoicmr

    Zg jm`prugni mrcgo cg bmspiqugtgs/ Zg mrcgoio sl gs

    ogjgsirlm

    @gosihg @gosihg

    Jipi cg rgc

    Zg clvlcg gb `gosihg y sggovio bms drif`gotms

    %piqugtgs m citifri`is,

    Zg ivgrlfui gb `ghmrsunji`lom piri

    bbgfir ib cgstlom y sggovio bms piqugtgs

    Zg ivgrlfui gb `ghmrsunji`lom piri

    bbgfir ib cgstlom y sggovio bms piqugtgs

    Zg rgjlngo bmspiqugtgs clrlflcms i

    gstg mrcgoicmr

    Zg jm`prugni mrcgo cg bmspiqugtgs/ Zg mrcgoio sl gs

    ogjgsirlm

    Jipi cg ipbljijlo

    Jipi cg triospmrtg

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    24/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi >3 cg 993

    Gb prmtmjmbm WCQ %Wsgr Citifri` Qrmtmjmb" prmtmjmbm cg citifri`is cg usuirlm, gsuo sgrvljlm cg triospmrtg slo jmogxlo8 gb `gosihg cgb g lsmr sg cgsjm`pmog gopiqugtgs WCQ %citifri`is WCQ,; y jici citifri`i sg govi ib rgjgptmr pmr gb ji lomqug sg govg mpmrtuom" cg dmr i locgpgoclgotg cg bms mtrms/ Bms citifri`is pugcgo bbgfirgo juibqulgr mrcgo ib rgjgptmr %lojbusm pugcgo om bbgfir," y gb g lsmr lfomri sl eio bbgficmjmrrgjti`gotg m om/ Qmr gstg `mtlvm" WCQ sugbg jm`pirirsg jmo gb sgrvljlm pmstib8 sggovio bms citms slo qug `gclg jmogxlo %uoi jirti pugcg govlirsg slo qug sg sgpi slgxlstg bi clrgjjlo cg cgstlom m sl ibfulgo vlvg ibb,/

    Dlfuri 9>/ Gsqug`i cg uo citifri`i WCQ/ Gb ji`pm lodgrlmr ibngrfi bms citms/

    Go gb prmjgsm cg govm cg bi lodmr`ijlo gotrg mrcgoicmrgs" bms citifri`is WCQ sggojipsubio go citifri`is LQ

    SJQ y WCQ usio smjkgts %bltgrib gotg" jmogjtmrgs m gojeudgs;gb tr lom prmjgcgcg bms piogbgs cg jmogxlmogs qug usinio iotgs bis jgotribltis tgbgdoljis" piogbgs cmocgbi jmo`utijlo cg bis bogis tgbgdoljis sg eiji i `iom, piri jm`uoljir prmfri`is gotrgs go uoi irqultgjturi jblgotg-sgrvlcmr/ Wo smjkgt gs uo puotm tgr loib m gxtrg`m go gbgobijg cg jm`uoljijlo gotrg cms ipbljijlmogs %qug" pmr bm fgogrib" sg ghgjutio gomrcgoicmrgs clstlotms,/ Bis ipbljijlmogs sg jm`uoljio `gcliotg gb govm y rgjgpjlo cg`gosihgs `gcliotgs smjkgts/ Wo smjkgt SJQ vlgog i sgr uo tgbdmom; uo smjkgt WCQ" uo

    nuzo cg jmrrgms/Icg`s cg jbisldljirsg go smjkgts SJQ y WCQ" bms smjkgts sg gojuicrio cgotrm cguom cg gstms frupms8

    Zmjkgts ijtlvms8 pugcgo govlir y rgjlnlr citms i trivs cg uoi jmogxloinlgrti/

    Zmjkgts pislvms8 gspgrio lotgotms cg jmogxlo/ Juiocm bbgfi uoijmogxlo gotriotg" bg islfoio uo smjkgt ijtlvm/ Om slrvgo piri govlir mrgjlnlr citms/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    25/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi >7 cg 993

    Go Seloklof lo Hivi :rc Gcltlmo" Nrujg Gjkgb cgsjrlng bms smjkgts cg uoi dmr`i vlsuib"jmo su jelspgiotg gstlbm8

    Gb smjkgt gs bi instrijjlo cg smdtwirg usici piri rgprgsgotir bms tgr`loibgs cguoi jmogxlo gotrg cms `qulois/ Qiri uoi jmogxlo cici" eiy uo smjkgt go jici`quloi" y pugcgs l ifloir uo jinbg elpmttljm jmrrlgocm gotrg bis cms `quloisjmo jici gxtrg`m cgb jinbg gojeudicm i uo smjkgt/ Cgscg bugfm" gb eircwirg dsljmy gb jinbgicm gotrg `qulois gs jm`pbgti`gotg cgsjmomjlcm/ Gb puotm duoci`gotibcg bi instrijjlo gs qug om ogjgslti`ms jmomjgr s cg bm ogjgsirlm/

    Dlfuri 9:/ Bi instrijjlo cgb smjkgt

    Dlfuri 93/ Wnljijlo jmojgptuib cg bms smjkgts

    Bi instrijjlo cgb smjkgt

    Zgrvlcmr cg DSQ

    Zgrvlcmr cg jmrrgm

    Zgrvlcmr wgn

    Mrcgoicmr sgrvlcmr

    Mrcgoicmr jblgotg

    Mrcgoicmr jblgotg

    Mrcgoicmr jblgotg

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    26/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi >4 cg 993

    Dlfuri 97/ Jm`uoljijlo `gcliotg smjkgts

    Ipbljijlo 9

    Zmjkgt

    Lotgrdiz%IQL, cgsmjkgts

    Ipbljijlo >

    Di`lbli cgprmtmjmbms

    SJQLQ

    ^gc

    Ipbljijlo cgusuirlm

    Zlstg`impgritlvm Zmjkgt

    Lotgrdiz%IQL, cgsmjkgts

    Ipbljijlo cgusuirlm

    Zlstg`impgritlvm

    Di`lbli cgprmtmjmbms

    SJQLQ

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    27/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi >6 cg 993

    Dlfuri 94/ Jm`uoljijlo `gcliotg smjkgts lojbuygocm pugrtms

    Bms smjkgts smo jrgicms pmr gb slstg`i mpgritlvm y mdrgjgo uoi lotgrdiz cgprmfri`ijlo cg ipbljijlmogs %IQL, `gcliotg bi juib pugcgo bis ipbljijlmogs govlir`gosihgs i mtris ipbljijlmogs" yi sgio bmjibgs m rg`mtis/ Bis mpgrijlmogs cg bms smjkgts%govlir" rgjlnlr" gtj/, sg l pbg`gotio jm`m bbi`icis ib slstg`i mpgritlvm go tmcms bms`mcgroms ZM; cljem cg mtri `iogri8 bms smjkgts dmr io pirtg cgb ojbgm cgb ZM/ Gobgofuihgs mrlgoticms i mnhgtms jm m H ivi m J*" bis jbisgs cg smjkgts sg l pbg`gotiosmnrg bis duojlmogs mdrgjlcis pmr gb ZM piri smjkgts/

    Jmo bm vlstm eisti gb m`gotm" pmcg`ms pbiotgiroms bi slfulgotg jugstlo8

    Bi rgspugsti sg rgprgsgoti go bi dlfuri 96/

    Jmoslcgrg`ms uo sgrvlcmr wgn %gs cgjlr" ESSQ, qug itlgocgsl ubtogi`gotg i virlms jblgotgs pmr gb pugrtm gstocir %51,/Bms jblgotgs usio gb prmtmjmbm SJQ %ESSQ usi gstg prmtmjmbmpmr cgdgjtm,/ J`m pugcg gb sgrvlcmr singr i qu jblgotgjmrrgspmocg jici pgtljlo=

    Bi jm`uoljijlo gotrg jblgotg y sgrvlcmrcgscg gb puotm cg vlsti cg bms smjkgts

    SJQWCQ

    LQ

    Icipticmr rgc

    Zgrvlcmr

    SJQWCQ

    LQ

    Icipticmr rgc

    Jblgotg

    IQL Zmjkgt

    Eircwirg

    Ojbgmcgb ZM

    QugrtmsSJQWCQ

    Gspijlm cgbis

    ipbljijlmogs

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    28/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi >5 cg 993

    Dlfuri 96/ Gstrujturi lotgroi cg uoi jm`uoljijlo jmo smjkgts SJQ

    Qmr ghg`pbm" piri gb prmtmjmbm ESSQ8

    Dlfuri 95/ Woi jm`uoljijlo ESSQ cgscg gb puotm cg vlsti cg bms smjkgts

    Di`lbli8 QD]LOGSSlpm8 ZMJK]ZS^GI@Qrmtmjmbm8 SJQLQ bmjib8 999/>>/:/3LQ rg`mti8 9>:/37/4/65Qugrtm bmjib8 >>34

    Wo smjkgt tlgog uoi clrgjjlo/ Go gbbi sg ib`ijgoi uo o`grm cg pugrtm" uoi clrgjjlo LQ yuo tlpm cg prmtmjmbm/

    Bi clrgjjlo cgb smjkgt jblgotg ib`ijgoi gb o`grm cg pugrtm pmr gb juib eijg bi pgtljlo" bi

    clrgjjlo LQ cgb mrcgoicmr y gb tlpm cg prmtmjmbm %SJQ" go gstg jism,/Bi clrgjjlo cgb smjkgt sgrvlcmr ib`ijgoi gb o`grm cg pugrtm pmr gb juib gspgri pgtljlmogs%51" go gstg jism," bi clrgjjlo LQ cgb mrcgoicmr y gb tlpm cg prmtmjmbm %SJQ" go gstg jism,/

    Woi jmogxlo sg jirijtgrlzi pmr cms clrgjjlmogs cg smjkgts8 bi cgb jblgotg y bi cgb sgrvlcmr/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    29/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi >< cg 993

    Jm`m eg ipuoticm iotgs" bis cldgrgojlis gotrg bis jm`uoljijlmogs jmo smjkgts SJQ yjmo smjkgts WCQ rgsubtio sl lbirgs i bis qug gxlstgo gotrg bbi`ir pmr tgbdmom y govliruoi jirti/

    Juiocm sg bbi`i pmr tgbdmom i ibfulgo" gb gsticm cg bi jm`uoljijlo sg jmomjg gotmcm `m`gotm8 qulgo bbi`i sing sl gb tgbdmom gst mjupicm m om %go ibfuoms jisms" gbcgstloitirlm cg bi bbi`ici ti`nlo sing sl tlgog ibfuoi bbi`ici gotriotg,; pgrjlng juocmpugcg jm`gozir bi jm`uoljijlo %juiocm ijinio bms pltlcms birfms y sugoi uoi vmz,;sing sl sg gst clrlflgocm i bi pgrsmoi cgsgici %sibvm qug bm gofigo, y clstlofug juocmbi jm`uoljijlo ei jmojbulcm m sg ei lotgrru`plcm %juiocm jgsi bi vmz cgb lotgrbmjutmr y sgmygo uoms pltlcms nrgvgs,/

    Juiocm sg govi uoi jirti" gb rg ltgotg bi lotrmcujg go uo nuzo y sg mbvlci cg gbbicuriotg uo tlg`pm8 lfomri sl bbgfir i su cgstlom m sl rgjlnlr rgspugsti %bi clrgjjlo pugcgom gxlstlr; gb cgstloitirlm pugcg om vlvlr yi ibb; bi jirti pugcg pgrcgrsg go ibfuoi mdljloi cgjmrrgms jmo gxjgsm cg trinihm,/ Om pugcg eingr" go cgdloltlvi" uo sgful lgotm jmotloum cgbgsticm cg bi jm`uoljijlo/ Zl" ib jinm cg uo tlg`pm" gb rg ltgotg rgjlng uoi jirti jmo gbtgxtm Bi Ifgojli Srlnutirli ei rgjlnlcm sus ibgfijlmogs" pgrm bis ei cgsgstl icm/ Qugcg

    ustgc rgjbi`ir pmr bi vi jlvlb" pgrm pgrcgr tlg`pm y clogrm/ Ierrgsg sudrl lgotm y pifugyi" sinr cms jmsis8 i, qug su jirti dug rgjlnlci" y n, qug om ei sgrvlcm piri oici/ Zl omrgjlng rgspugsti" om gstir sgfurm cg sl bi jirti bbgf i su cgstlom; bm ls`m mjurrg go gbprmtmjmbm WCQ8 uo g lsmr cg citifri`is WCQ cgsjmomjg sl bbgfio m om i su cgstlom/

    Qiri qug sgi pmslnbg bi jm`uoljijlo jblgotg-sgrvlcmr" gb jblgotg cgng gstinbgjgrsmjkgts y jmogjtirbms i smjkgts cgb sgrvlcmr/ Bms pisms qug sg slfugo go uoijm`uoljijlo tplji jmo smjkgts SJQ smo stms8

    Zg jrgio bms smjkgts go gb jblgotg y gb sgrvlcmr/

    Gb sgrvlcmr gstinbgjg gb pugrtm pmr gb qug prmpmrjlmoir gb sgrvljlm/ Gb sgrvlcmr pgr iogjg i bi gsjujei cg pgtljlmogs cg bms jblgotgs pmr gb pugrtm

    cgdlolcm go gb pism iotgrlmr/

    Wo jblgotg jmogjti jmo gb sgrvlcmr/

    Gb sgrvlcmr ijgpti bi jmogxlo/

    Zg rgiblzi gb lotgrji`nlm cg citms/

    Gb jblgotg m gb sgrvlcmr" m i`nms" jlgrrio bi jmogxlo/

    Bis jlojm prl gris gtipis `grgjgo ibfuoms jm`gotirlms/ Go prl gr bufir" gb sgrvlcmr

    cgng gstir go ghgjujlo iotgs cg qug bms jblgotgs lotgotgo jmogjtirsg i b y cgng iotgogrijtlvm uo smjkgt pislvm qug pgr iogzji i bi gspgri cg pgtljlmogs gotriotgs/

    Go sgfuocm" gb jblgotg cgng jrgir uo smjkgt ijtlvm go gb juib sg gspgjldlqugo biclrgjjlo LQ y gb o`grm cg pugrtm cg bi ipbljijlo qug prmpmrjlmoi gb sgrvljlm cgsgicm/@gcliotg gstg smjkgt" gb jblgotg jm lgozi uoi jmogxlo SJQ jmo gb sgrvlcmr/

    Go tgrjgr bufir" gb lotgotm cg jmogxlo SJQ cgsgojicgoi qug gb sgrvlcmr jrgg uosmjkgt ijtlvm piri gb jblgotg %curiotg su tlg`pm cg vlci" om pmcr sgr islfoicm i mtrmsjblgotgs,/

    Dloib gotg" sg gstinbgjg bi jmogxlo SJQ gotrg gb smjkgtcgb jblgotg y gb smjkgtijtlvmcgb sgrvlcmr/ I pirtlr cg gotmojgs" uom y mtrm pugcgo govlir citms m rgjlnlrbms i trivs cg bijmogxlo/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    30/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi :1 cg 993

    Qiri gb prmfri icmr cg H ivi" uo smjkgt gs bi rgprgsgotijlo cg uoi jmogxlo piri bitrios lslo cg lodmr ijlo gotrg cms ipbljijlmogs" yi sg ghgjutgo go uo ls`m mrcgoicmrm go virlms/ Gsti instrijjlo cg ibtm olvgb pgr ltg cgsprgmjupirsg cg bms cgtibbgs qugyijgo nihm gbbi %jmrrgspmoclgotgs i bms prmtmjmbms sunyijgotgs,/ Qiri l pbg`gotir bmssmjkgts SJQ" gb piqugtg hivi/ogt cg Hivi prmpmrjlmoi cms jbisgs8 ZgrvgrZmjkgt yZmjkgt/ Bi prl gri rgprgsgoti uo smjkgt pislvm qug gspgri jmogxlmogs cg bms jblgotgs yqug sg unlji go gb bicm cgb sgrvlcmr/ Bi sgfuoci rgprgsgoti uo smjkgt ijtlvm qug pugcggovlir y rgjlnlr citms %pugcg unljirsg go gb sgrvlcmr y go gb jblgotg,/

    Go rgsu`go" uo smjkgt pgr ltg jmogjtirsg i uo gqulpm i trivs cg uo pugrtm" govlir mrgjlnlr citms y jgrrir bi jmogxlo gstinbgjlci/ Smcms bms cgtibbgs cg bms prmtmjmbms cg rgc"cg bi oituribgzi dslji cg bis rgcgs cg tgbgjm`uoljijlmogs y cg bms slstg`is mpgritlvmslovmbujricms sg mjubtio i bms prmfri`icmrgs/ Zl om dugri is" om einri `ujems `sprmfri`icmrgs cg ipbljijlmogs piri rgcgs qug gstuclmsms cg bi bltgrituri go sosjrltm/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    31/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi :9 cg 993

    :/ GB QIYWGSG hivi/ogt CG HITI

    :/9 Lotrmcujjlo

    Frio pirtg cg bi pmpubirlcic cg H ivi sg cgng i su mrlgotijlo i Lotgrogt/ Jing iiclrqug gsti ijgptijlo rgsubti grgjlci8 H ivi prmpmrjlmoi uoi lotgrdiz cg smjkgts mrlgotici

    i mnhgtms qug sl pbldlji ujesl m gb trinihm go rgc/Jmo gstg bgofuihg" jm`uoljirsg jmo mtris ipbljijlmogs i trivs cg Lotgrogt gs `uy

    sl lbir i mntgogr bi gotrici cgb usuirlm i trivs cg bi jmosmbi m i bggr irjelvms" gojmotristg jmo bm qug sujgcg go bgofuihgs jm m J/ Jrmombflji`gotg" H ivi dug gb prl grbgofuihg cg prmfri`ijlo cmocg bi `iolpubijlo cg bi gotrici y siblci cg citms i trivscg bi rgc sg rgiblzini jm`m bi GZ jmo irjelvms/

    Gb piqugtg hivi/ogt" qug prmpmrjlmoi uoi lotgrdiz mrlgotici i mnhgtms piri jrgir y`ioghir smjkgts" jmogxlmogs ESSQ" bmjiblzicmrgs W^B" gtj/" jm`prgocg jbisgs qug sgpugcgo clvlclr go cms friocgs frupms8

    i, Jbisgs qug jmrrgspmocgo i bis IQL %lotgrdijgs cg prmfri`ijlo cgipbljijlmogs, cg bms smjkgts8 Zmjkgt" ZgrvgrZmjkgt"Citifri`Zmjkgt" gtj/

    n, Jbisgs jmrrgspmoclgotgs i egrri lgotis piri trinihir jmo W^B8 W^B"W^BJmoogjtlmo" EttpW^BJmoogjtlmo" W^BGojmcgr" gtj/

    Gb jmotgolcm jm`pbgtm cghivi/ogt go bi H >ZG 9/> gs gb slfulgotg8

    Jbisgs8Iutegotljitmr

    JmotgotEiocbgrCitifri`QijkgtCitifri`ZmjkgtCitifri`ZmjkgtL`pbEttpW^BJmoogjtlmoLogtIccrgssHirW^BJmoogjtlmo@ubtljistZmjkgtOgtQgr`lsslmoQisswmrcIutegotljitlmoZgrvgrZmjkgt

    ZmjkgtZmjkgtL`pbZmjkgtQgr`lsslmoW^BW^BJbissBmicgrW^BJmoogjtlmoW^BCgjmcgrW^BGojmcgrW^BZtrgi`Eiocbgr

    Gxjgpjlmogs8NlocGxjgptlmoJmoogjtGxjgptlmo

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    32/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi :> cg 993

    @ibdmr`gcW^BGxjgptlmoOm^mutgSmEmstGxjgptlmoQrmtmjmbGxjgptlmoZmjkgtGxjgptlmoWokomwoEmstGxjgptlmoWokomwoZgrvljgGxjgptlmo

    Lotgrdijgs8JmotgotEiocbgrDijtmryDlbgOi`g@ipZmjkgtL`pbDijtmryZmjkgtMptlmosW^BZtrgi`EiocbgrDijtmry

    Bi hgrirqui cg jbisgs cgb piqugtghivi/ogt sg cgtibbi go bi slfulgotg dlfuri8

    Dlfuri 9

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    33/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi :: cg 993

    Gb piqugtg hivi/ogt pgr ltg trinihir jmo bms prmtmjmbms SJQ y WCQ/ Bi jbisghivi/ogt/Zmjkgt pgr ltg jrgir smjkgts SJQ piri gb jblgotg; bi jbisghivi/ogt/ZgrvgrZmjkgteijg bm ls`m piri gb sgrvlcmr/ Qiri bis jm uoljijlmogs WCQ" H ivi mdrgjg bi jbisghivi/ogt/Citifri`Zmjkgt piri bms cms bicms cg uoi jm`uoljijlo WCQ" y bi jbisghivi/ogt/Citifri`Qijkgt piri jrgir citifri`is WCQ/

    Dlfuri >1/ Gsqug`i cg bis jbisgs nisicis go SJQ y go WCQ

    Gb gstuclm cgtibbicm cg jici uoi cg bis jbisgs cg hivi/ogt jig dugri cgb `nltm cgbtutmrlib8 iqu sg gxpmocro smbi`gotg bis l prgsjloclnbgs piri gb duojlmoi lgotm cgb jeitcgb ipirticm 3 %jmrrgspmoclgotgs ib prmtmjmbm SJQ,/

    :/> Bi jbisg hivi/ogt/ZgrvgrZmjkgt

    Gsti jbisg gs utlblzici pmr gb sgrvlcmr piri rgjlnlr jmogxlmogs cg bms jblgotgs `gcliotggb prmtmjmbm SJQ/ Smci ipbljijlo qug ijtg jm`m sgrvlcmr jrgir uoi lostiojli cg gstijbisg y bbi`ir i su `tmcm ijjgpt%,; bi bbi`ici eir qug bi ipbljijlo sg nbmqugg %gstmgs" qug pgr iogzji gspgriocm, eisti qug bbgfug uoi jmogxlo pmr pirtg cg ibfo jblgotg/Juiocm sujgci gstm" gb `tmcm ijjgpt%,jrgir uoi lostiojli cg bi jbisghivi/ogt/Zmjkgtqug sg usir piri jm`uoljirsg jmo gb jblgotg/ Oici l plcg qug uo sgrvlcmr tgofi uo oljmmnhgtm ZgrvgrZmjkgt y `ujems mnhgtms Zmjkgt ismjlicms %jici uom i uo jblgotg jmojrgtm,/

    Wo mnhgtm ZgrvgrZmjkgt gs slg`prg uo smjkgt pislvm/ Go bi cmju`gotijlo cg Zuo ygo `ujems blnrms sg jmoslcgri qug bms ZgrvgrZmjkgts smo smjkgts cg sgrvlcmr %sgrvgr

    smjkgts,/ I l huljlm" gsti lcgotldljijlo rgsubti i`nlfui8 uo smjkgt cg sgrvlcmr gs uosmjkgt qug rgslcg go gb sgrvlcmr" yi sgi pislvm %ZgrvgrZmjkgt, m ijtlvm %Zmjkgt,/ Ommnstiotg l mplolo" usir go bm qug slfug smjkgt cg sgrvlcmr piri rgdgrlr g i uo mnhgtm

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    34/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi :3 cg 993

    ZgrvgrZmjkgt; pugs prgdlgrm om clsjrgpir" go uo trinihm cg clvubfijlo" cg bi tgr lombmfiijgptici/

    Cgnm sgibir ti`nlo qug Nrujkg Gjkgb jmoslcgri gquvmjm gb tr lom ZgrvgrZmjkgt"pugs bis jbisgs hivi/ogt/ZgrvgrZmjkgt y hivi/ogt/Zmjkgt om gsto rgbijlmoicis pmregrgojli ol cgsjlgocgo cg uoi supgrjbisg jm`o/

    Dlfuri >9/ Bis jbisgs Zmjkgt y ZgrvgrZmjkgt go duojlmoi`lgotm

    Bms jmostrujtmrgs `s einltuibgs cg bi jbisg ZgrvgrZmjkgt smo stms8

    punblj ZgrvgrZmjkgt %lot pugrtm, termws LMGxjgptlmopunblj ZgrvgrZmjkgt %lot pugrtm" lot bmofltucJmbi, termws LMGxjgptlmopunblj ZgrvgrZmjkgt %lot pugrtm" lot bmofltucJmbi" LogtIccrgss clrLotgrogt, termws LMGxjgptlmo

    Gb irfu`gotm pugrtm gs gb o`grm cgb pugrtm utlblzicm pmr gb smjkgt cgb sgrvlcmr pirigsjujeir bis pgtljlmogs SJQ cg bms jblgotgs; gb gotgrm bmofltucJmbi gs bi bmofltuc `xl icg bi jmbi piri jmogxlmogs gotriotgs; pmr btl m" clrLotgrogt gs uo mnhgtm LogtIccrgss/

    ^gsubti l pmrtiotg rgsibtir qug bi jmbi cg jmogxlmogs gotriotgs gs cg tlpm DLDM %DlrstLo" Dlrst Mut8 prl grm go gotrir" prl grm go siblr, y qug su bmofltuc `xl i vlgogcgtgr loici pmr gb slstg`i mpgritlvm/ Gs cgjlr8 sl gb irfu`gotm bmofltucJmbi supgri gbti`im `xl m cg bi jmbi gstinbgjlci pmr gb slstg`i mpgritlvm" sg usir go rgiblcic gstgbtl m vibmr" slo qug sg fgogrg olofo ivlsm piri gb prmfri`icmr/ Go gb jism cg qug bi jmbi

    Ipbljijlo jblgotg

    Ipbljijlo jblgotg

    Zmjkgt

    Zmjkgt

    ZmjkgtZmjkgt

    ZgrvgrZmjkgt

    Zmjkgt

    Ipbljijlo sgrvlcmri

    Jmogxlo gotriotg

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    35/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi :7 cg 993

    gst bbgoi" gb mnhgtm ZgrvgrZmjkgt rgjeizir ougvis jmogxlmogs eisti qug surhio eugjmsgo gbbi/

    Bis lostiojlis cg bi jbisg hivi/ogt/LogtIccrgss rgprgsgotio clrgjjlmogs LQ/ Gstijbisg om tlgog jmostrujtmrgs pnbljms/ Qiri mntgogr uo mnhgtm LogtIccrgss" eiy qug bbi`irib `tmcm gsttljm nyOi`g%, jmo uo irfu`gotm cg tlpm Ztrlof qug rgprgsgoti gb om`nrg cguo omcm %www/uv/gs" pmr ghg`pbm, m uoi clrgjjlo LQ %9>/3/>:3/99" pmr ghg`pbm,/LogtIccrgss prmpmrjlmoi uo `tmcm fgtEmstOi`g%, piri ivgrlfuir gb om`nrg cgbmrcgoicmr bmjib/ Bms cms slfulgotgs ghg`pbms sgrvlro piri lbustrir gb usm cg gsti jbisg %gbprl grm rgqulgrg jmogxlo i Lotgrogt,8

    l pmrt hivi/lm/(;l pmrt hivi/ogt/(;

    Qrmpmrjlmoi lodmr ijlo smnrg bi jmogxlo i bi pfloi wgn cg bi Wolvgrslcic cg Tibgojli/

    punbljjbiss Lodmr irJmogxlmoWT {

    punbljstitljvmlc `ilo%Ztrlof [P irfs, {Zmjkgt smjkgt 0oubb;try {

    LogtIccrgss clrgjjlmo 0 LogtIccrgss/fgtNyOi`g%.www/uv/gs.,;Zystg /mut/prlotbo%clrgjjlmo,;smjkgt 0ogwZmjkgt%clrgjjlmo" 51,;

    Zystg /mut/prlotbo %.Jmogjticm i . + smjkgt/fgtLogtIccrgss%,,;Zystg /mut/prlotbo %.pmr gb pugrtm . + smjkgt/fgtQmrt%,,;Zystg /mut/prlotbo %.cgscg gb pugrtm bmjib . + smjkgt/fgtBmjibQmrt%,,;Zystg /mut/prlotbo %.y cgscg bi clrgjjlo bmjib . + smjkgt/fgtBmjibIccrgss%,,;

    }jitje %WokomwoEmstGxjgptlmo g9, {

    Zystg /mut/prlotbo %.Om sg pucm gojmotrir uoi `quloi jmo gsg om`nrg/.,;}jitje %ZmjkgtGxjgptlmo g>, {

    Zystg /mut/prlotbo %.Om sg pucm jmogjtir jmo bi quloi pmr gb pugrtm gstinbgjlcm/.,;}

    jitje %LMGxjgptlmo g:, {

    Zystg /mut/prlotbo %g:,;} dloibby { try {

    smjkgt/jbmsg%,;}

    jitje %LMGxjgptlmo g3, { Om sg eijg oici8 om sg pucm jgrrir gb smjkgt/

    }}

    }

    }

    Lodmr`irJmogxlmoWT/hivi

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    36/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi :4 cg 993

    l pmrt hivi/ogt/(;

    punblj jbiss ClrgjjlmoBmjib {

    punbljstitljvmlc `ilo %Ztrlof irfs[P, { try {

    LogtIccrgss clrgjjlmo 0 LogtIccrgss/fgtBmjibEmst%,;Zystg /mut/prlotbo%clrgjjlmo,;

    } jitje %WokomwoEmstGxjgptlmo g, {

    Zystg /mut/prlotbo%.Grrmr ib lotgotir mntgogr gb om`nrg cg bi `quloi bmjib/.,;}

    }}

    Go l gqulpm" stg gs gb rgsubticm cg ghgjutir gb iotgrlmr jclfm8

    Seg LogtIccrgss ls `iloby usgc dmr bmmklof up i emst&s iccrgss oi`g mr ou`ngr/

    Lt ls ibsm pmsslnbg tm mntilo teg iccrgss it teg mtegr goc md i jmoogjtlmo/

    Seg LogtIccrgss mnhgjt rgprgsgots teg Lotgrogt iccrgss md i flvgo jm`putgr mr emst/

    Segrg irg om punblj jmostrujtmrs" ymu jio mntilo io LogtIccrgss mnhgjt ny jibblof teg stitlj

    nyOi`g `gtemc" pisslof lo gltegr i emstoi`g blkg wwww/lCgvgbmp`got/lodm mr i ogtwmrkiccrgss is i Ztrlof" blkg .9>/3/>:3/99./

    Dlfuri >>/ Ghg`pbm cg usm cg bi jbisg LogtIccrgss

    Bi clrgjjlo LQ 9>6/1/1/9 gs uoi clrgjjlo gspgjlib qug rgprgsgoti ib mrcgoicmr bmjib"gst m om jmogjticm i Lotgrogt/ Qiri qug sgi vblci" gb mrcgoicmr cgng tgogr lostibici yjmodlfurici uoi l pbg`gotijlo cg bi plbi cg prmtmjmbms SJQLQ %bms `mcgroms slstg`is

    mpgritlvms sugbgo mjupirsg cg gstm; go Vlocmws :/9" pmr ghg`pbm" eini qug lostibir pmrsgpiricm gb smdtwirg cg SJQLQ,/

    ClrgjjlmoBmjib/hivi

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    37/115

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    38/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi :5 cg 993

    Dlfuri >:/ Gb `tmcm ijjgpt%, go `irjei

    Ipbljijlo jblgotg

    Ipbljijlo jblgotg

    Zmjkgt

    Zmjkgt

    ZgrvgrZmjkgt

    Zmjkgt

    Ipbljijlo sgrvlcmri

    Qugrtm ijjgpt%,

    Zmjkgt

    Omti8 Wo dbuhm %strgi`, gs uoi sgjugojli cg citms cg bmofltuclocgtgr loici/Go H ivi" uo dbuhm gst dmr icm pmr uoi sgjugojli mrcgoici cg nytgs"qug pugcgo rgprgsgotir jirijtgrgs" citms prl ltlvms" mnhgtms" gtj/ Bms

    dbuhms cg gotrici %loput strgi`s, sg usio piri bggr citms cg uoi dugotgcg gotrici" jm`m uo dljegrm" uo pgrldrljm m bi `g`mrli/ Bms dbuhms cgsiblci %mutput strgi`s, sg g`pbgio piri govlir citms i jmosu lcmrgscg citms; pmr ghg`pbm" uo dljegrm m uoi jmogxlo cg rgc/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    39/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi :< cg 993

    :/: Bi jbisg hivi/ogt/Zmjkgt

    Gsti jbisg l pbg`goti smjkgts SJQ ijtlvms %jipijgs cg rgjlnlr y trios ltlr citms,/Zus jmostrujtmrgs smo

    prmtgjtgc Zmjkgt %, termws ZmjkgtGxjgptlmo

    prmtgjtgc Zmjkgt %ZmjkgtL pb l pb, termws ZmjkgtGxjgptlmopunblj Zmjkgt %Ztrlof emst" lot pugrtm, termws WokomwoEmstGxjgptlmo" LMGxjgptlmopunblj Zmjkgt %LogtIccrgss clrgjjlmo" lot pugrtm, termws LMGxjgptlmopunblj Zmjkgt%Ztrlof emst" lot pugrtm" LogtIccrgss clrBmjib" lot pugrtmBmjib, termws LMGxjgptlmopunblj Zmjkgt %LogtIccrgss clrgjjlmo" lot pugrtm" LogtIccrgss clrBmjib" lot pugrtmBmjib, termws

    LMGxjgptlmopunblj Zmjkgt %Ztrlof emst" lot pugrtm" nmmbgio dbuhm, termws LMGxjgptlmopunblj Zmjkgt %LogtIccrgss emst" lot pugrtm" nmmbgio dbuhm, termws LMGxjgptlmo

    Gb jmostrujtmr punblj Zmjkgt %Ztrlof emst" lot pugrtm, termws WokomwoEmstGxjgptlmo"LMGxjgptlmo gs uom cg bms `s usicms/ Gstg `tmcm jrgi uo mnhgtm Zmjkgt y bm jmogjtijmo gb pugrtm jmo o`grm pugrtm cgb mrcgoicmr juym om`nrg gs emst/ Go gb jism cg qug sgeiyi lostibicm ibfo fgstmr cg sgfurlcic piri bi `quloi vlrtuib H ivi" sg bbi`i ib `tmcmpunblj vmlc jegjkJmoogjt%Ztrlof emst" lot pugrtm" Mnhgjt jmotgxtm, termwsZgjurltyGxjgptlmo" OubbQmlotgrGxjgptlmo cg bi jbisg hivi/biof/Zgjurlty@ioifgr piriivgrlfuir sl bi mpgrijlo gst pgr ltlci/ Zl om gs is" sg biozi uoi gxjgpjlohivi/biof/ZgjurltyGxjgptlmo/ Zl om sg pugcg bmjiblzir gb mrcgoicmr jmo om`nrg emst" sgbiozi uoi gxjgpjlohivi/ogt/WokomwoEmstGxjgptlmo/

    Om eiy qug mbvlcir qug gb irfu`gotm pugrtm jmrrgspmocg i bi `quloi cg cgstlom/Fgogrib gotg" bms prmfri`icmrgs om gspgjldljio gb pugrtm bmjib vlojubicm ib smjkgt" quggs islfoicm pmr bi `quloi vlrtuib H ivi8 bi @TH prgfuoti ib slstg i mpgritlvm jub gs gbprl gr pugrtm blnrg y bm usi piri gb smjkgt/ Cg tmcms `mcms" eiy cms jmostrujtmrgs qug

    pgr ltgo gspgjldljir gb pugrtm bmjib %pugrtmBmjib,/ Zl om gstuvlgri blnrg" sg bioziri uoigxjgpjlo/

    Bms `tmcms `s usicms cg gsti jbisg ipirgjgo go bi slfulgotg tinbi8

    @tmcm Cgsjrlpjlo

    fgtLogtIccrgss%, Cgvugbvg bi clrgjjlo LogtIccrgss i bi juib gst jmogjticmgb smjkgt

    fgtQmrt%, Cgvugbvg gb o`grm cg pugrtm ib qug gst jmogjticm gb

    smjkgtfgtBmjibIccrgss%, Cgvugbvg bi clrgjjlo bmjib i bi juib gst jmogjticm gbsmjkgt

    fgtBmjibQmrt%, Cgvugbvg gb o`grm cg pugrtm bmjib ib juib gst jmogjticmgb smjkgt

    fgtLoputZtrgi`%, Cgvugbvg uo dbuhm cg gotrici piri gb smjkgt

    fgtMutputZtrgi`%, Cgvugbvg uo dbuhm cg siblci piri gb smjkgt

    jbmsg%, Jlgrri gb smjkgt

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    40/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi 31 cg 993

    Gb `tmcm punblj LogtIccrgss fgtLogtIccrgss%, cgvugbvg bi clrgjjlo LQ rg`mti %godmr i cg uo mnhgtm LogtIccrgss, i bi qug gst jmogjticm gb smjkgt/

    Gb `tmcm punblj lot fgtQmrt%, cgvugbvg gb pugrtm rg`mtm ib juib gst jmogjticm gbsmjkgt/

    Gb `tmcm punblj LogtIccrgss fgtBmjibIccrgss%, cgvugbvg bi clrgjjlo LQ rg`mti %godmr i cg uo mnhgtm LogtIccrgss, i bi qug gst jmogjticm gb smjkgt/

    Gb `tmcm punblj lot fgtBmjibQmrt%, cgvugbvg gb pugrtm bmjib ib juib gst jmogjticm gbsmjkgt/

    Gb `tmcm punblj vmlc jbmsg%, termws LMGxjgptlmo jlgrri gb smjkgt y blngri bms rgjursmsismjlicms/ Zl bi mpgrijlo om gs pmslnbg %pmr ghg`pbm" pmrqug yi ei slcm jgrricm," sg bioziuoi gxjgpjlo LMGxjgptlmo/ Ib jgrrir uo smjkgt" ti`nlo sg jlgrrio bms dbuhms cg gotrici ycg siblci ismjlicms/

    Gb `tmcm punblj LoputZtrgi` fgtLoputZtrgi`%, termws LMGxjgptlmo cgvugbvg uo dbuhmcg gotrici piri gb smjkgt/ Jmo b" uoi ipbljijlo pugcg rgjlnlr lodmr ijlo prmjgcgotg cgbi `quloi cg cgstlom %gs cgjlr" cgb mtrm bicm cg bi jmogxlo,/

    Gb `tmcm punblj MutputZtrgi` fgtMutputZtrgi`%, termws LMGxjgptlmo cgvugbvg uodbuhm cg siblci piri gb smjkgt" qug pugcg usirsg piri govlir lodmr ijlo i bi `quloi cgcgstlom %gs cgjlr" ib mtrm bicm cg bi jmogxlo,/

    Qiri uo smjkgt ijtlvm" bms cms btl ms `tmcms smo l prgsjloclnbgs8 cg ibfo `mcm

    cgng gb smjkgt govlir y rgjlnlr citms i trivs cg bi jmogxlo SJQ/ Gb piqugtg hivi/ogtrgjurrg ib piqugtg hivi/lm" go jmojrgtm" i bis jbisgs hivi/lm/LoputZtrgi` yhivi/lm/MutputZtrgi`/ Gstis cms jbisgs tritio bms citms jm`m nytgs y prmpmrjlmoio`tmcms sgojlbbms piri bggr y gsjrlnlr nytgs y irriys cg nytgs/ Isl ls`m" sus sunjbisgspugcgo govmbvgrsg go jbisgs jm`mhivi/lm/^gicgryhivi/lm/Vrltgr" qug trios ltgo citmsgo dmr i cg jirijtgrgs Woljmcg" om cg nytgs/

    Juiocm sg trinihi jmohivi/ogt" eiy trgs jbisgs cghivi/lm qug sugbgo usirsg jm`mgovmbtmrlm piri bms mnhgtms cgvugbtms pmr fgtMutputZtrgi`%, y fgtMutputZtrgi`%,8

    Nuddgrgc^gicgr/ Bms cms `tmcms `s lotgrgsiotgs piri ougstrmsprmpsltms smo rgic%, y rgicBlog%,/ Gb prl grm cgvugbvg gb gotgrm

    jmrrgspmoclgotg ib jirjtgr bgcm %m 9 sl sg ei ibjiozicm gb dloib cgbdbuhm,; gb sgfuocm cgvugbvg uo Ztrlof qug jmrrgspmocg i uoi bogi cgtgxtm/ I`nms prmvmjio nbmqugm8 om tgr loio cg ghgjutirsg eisti qugeiyi citms clspmolnbgs m eisti qug sg biojg uoi gxjgpjlo/

    QrlotZtrgi`/ Lojbuyg bms `tmcms prlot%, y prlotbo%," qug pgr ltgo govlircitms prl ltlvms y mnhgtms Ztrlof/ Gb `tmcm wrltg%, pgr ltg govlir nytgsm irriys cg nytgs/ Bms trgs `tmcms nbmqugio bi GZ/

    QrlotVrltgr/ Gs uoi jbisg sl lbir i bi iotgrlmr" g lojbuyg ti`nlo bms`tmcms prlot%, y prlotbo%,/ Bi prlojlpib cldgrgojli gs qug pgr ltg govlirjirijtgrgs jmcldljicms `gcliotg clstlotis jmcldljijlmogs %LZM Bitlo"

    WSD-5///,/ I`nms `tmcms nbmqugio bi GZ/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    41/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi 39 cg 993

    Ghg`pbms8

    9 Zg jrgi uo smjkgt jmo gb om`nrg cgb omcm y gb o`grm cg pugrtm >7Zmjkgt smjkgtJblgotg 0ogwZmjkgt%www/ilcl i/gs" >7,;

    > Zg jrgi uo smjkgt jmo bi clrgjjlo LQ cici y gb pugrtm >7/

    Zmjkgt smjkgtJblgotg 0ogwZmjkgt%>4/74/65/931" >7,;

    : Zg jrgi uo smjkgt jmo bi clrgjjlo LQ cici y gb pugrtm 91>7/Zmjkgt smjkgtJblgotg 0ogwZmjkgt%>4/74/65/931" 91>7,;

    Zg mntlgog gb om`nrg cgb mrcgoicmr ib qug pgrtgogjg gb smjkgt/Zystg /mut/prlotbo%smjkgtJblgotg/fgtLogtIccrgss%,,;

    Zg mntlgog gb o`grm cg pugrtm ismjlicm ib smjkgt/Zystg /mut/prlotbo%smjkgtJblgotg/fgtQmrt%,,;

    3 Zg jrgi uo smjkgt jmo bi clrgjjlo LQ cici y gb pugrtm >7/Zmjkgt smjkgtJblgotg 0ogwZmjkgt%>4/74/65/931" >7,;

    Woi vgz gstinbgjlci bi jmogxlo" sg gxtrigo bms dbuhms cg GZ ismjlicms ib smjkgt/LoputZtrgi gotrici 0 smjkgtJblgotg/fgtLoputZtrgi %,;MutputZtrgi siblci 0 smjkgtJblgotg/fgtMutputZtrgi %,;

    Zg bgg cgb sgrvlcmr uo nytg `gcliotg gb `tmcm rgic%,/gotrici/rgic%,;

    Zg govi ib sgrvlcmr uo nytg `gcliotg gb `tmcm wrltg%,/

    siblci/wrltg%43,;

    Zg usi bi jbisg QrlotVrltgr jm`m govmbtmrlm cg MutputZtrgi piri govlir uoi jicgoi cg jirijtgrgs ib dbuhm cg siblci/ Bugfm" sg jlgrri gb smjkgt/QrlotVrltgr pw 0ogwQrlotVrltgr%siblci" trug,;pw/prlotbo%Gsjrlnlgocm go bi siblci,;smjkgtJblgotg/jbmsg%,;

    7 Zg jrgi uo smjkgt jmo bi clrgjjlo LQ cici y gb pugrtm >7/Zmjkgt smjkgtJblgotg 0ogwZmjkgt%>4/74/65/931" >7,;

    Woi vgz gstinbgjlci bi jmogxlo" sg gxtrigo bms dbuhms cg GZ ismjlicms ib smjkgt/LoputZtrgi gotrici 0 smjkgtJblgotg/fgtLoputZtrgi %,;MutputZtrgi siblci 0 smjkgtJblgotg/fgtMutputZtrgi %,;

    Zg usi bi jbisg Nuddgrgc^gicgr jm`m govmbtmrlm cg LoputZtrgi piri bggr bogis jm`pbgtis cgb dbuhm cg gotrici/Nuddgrgc^gicgr nr 0ogwNuddgrgc^gicgr%ogw

    LoputZtrgi`^gicgr%smjkgtJblgotg/fgtLoputZtrgi %,,,;

    Zg bgg uoi bogi jm`pbgti y sg jlgrri gb smjkgt/nr/rgicBlog%,;smjkgtJblgotg/jbmsg%,;

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    42/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi 3> cg 993

    Bi l pbg gotijlo cg juibqulgr prmfri i sgrvlcmr go H ivi slfug gsti sgjugojli cgpisms8

    9/ Zg jrgi uo mnhgtm ZgrvgrZmjkgt piri gsjujeir i bis pgtljlmogs qugbbgfio ib pugrtm ismjlicm ib sgrvljlm/

    >/ Juiocm sg bbi`i ib `tmcm ijjgpt%," gb smjkgt cg sgrvlcmr pgr iogjg ibi gspgri cg pgtljlmogs cg jblgotgs pmr gb pugrtm/

    :/ Ib bbgfir uoi smbljltuc sg slfugo trgs pisms8

    :/9/Zg ijgpti bi jmogxlo" bm juib fgogri uo mnhgtm Zmjkgt ismjlicm ibjblgotg/

    :/>/Zg ismjlio mnhgtms cg bis jbisgs jmotgolcis go gb piqugtghivi/lm ibms dbuhms %strgi`s, cg gotrici y siblci cgb smjkgt/

    :/:/Zg bgg cg bms dbuhms y sg gsjrlng go gbbms; gs cgjlr" sg bggo yprmjgsio bms `gosihgs gotriotgs y sg govio bis rgspugstis i bms

    jblgotgs/3/ Zg jlgrrio bms dbuhms/

    7/ Zg jlgrri gb smjkgt vlojubicm ib jblgotg/

    4/ Gb smjkgt cg sgrvlcmr jmotloi i bi gspgri cg ougvis pgtljlmogs/

    Lfuib gotg" bms prmfri`is jblgotg sg l pbg`gotio is8

    9/ Zg jrgi uo mnhgtm Zmjkgt" qug tlgog ismjlicm uo omcm cg cgstlom y uopugrtm cmocg sg ghgjuti gb sgrvljlm cg lotgrs/

    >/ Zg ismjlio mnhgtms cg bis jbisgs jmotgolcis go gb piqugtghivi/lm i bmsdbuhms %strgi`s, cg gotrici y siblci cgb smjkgt/

    :/ Zg bgg cg bms dbuhms m sg gsjrlng go gbbms/

    3/ Zg jlgrrio bms dbuhms/

    7/ Zg jlgrri gb smjkgt/

    Gb jlgrrg cg bms smjkgts om cgng pisirsg pmr ibtm8 pmr su oituribgzi nlclrgjjlmoibjmosu`go nistiotgs rgjursms" tiotm cg bi `quloi vlrtuib H ivi jm`m cgb slstg i

    mpgritlvm/Wo smjkgtsg jlgrri juiocm

    dloiblzi gb prmfri`i qug bm jrg;

    sg bbi`i i su tmcm jbmsg%,;

    sg jlgrri uom cg bms dbuhms cg GZ ismjlicms;

    gs gbl loicm pmr gb rgjmbgjtmr cg nisuri/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    43/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi 3: cg 993

    Jmodlir go gb rgjmbgjtmr cg nisuri piri jgrrir bms smjkgts m bms dbuhms cg GZ gsprjtlji pmjm rgjm`gocinbg/ Jmoslcgrg`ms" pmr ghg`pbm" gstg tmcm8

    punblj vmlc gsjrlnlrIrjelvm%, { try {

    Dlbg dljegrm 0ogwDlbg%.J8Rtg`pmrib/txt.,;NuddgrgcMutputZtrgi siblci 0ogwNuddgrgcMutputZtrgi %ogwDlbgMutputZtrgi %dljegrm,,;siblci/wrltg% %lot, &I&,; Gsjrlng gb nytg jmrrgspmoclgotg ib jirjtgr &I&siblci/dbuse%,;

    } jitje %LMGxjgptlmo g, {

    g/prlotZtijkSrijg%,;}}

    Jm`m gb mnhgtm siblci om sg jlgrri gxpbjlti`gotg" qugcir `irjicm jm`m pmslnbg

    prgsi cgb rgjmbgjtmr cg nisuri juiocm tgr log gb tmcm/ Juiocm gb rgjmbgjtmr cg nisuribm jijg" bm jgrrir y blngrir su `g`mrli/ Ib jgrrirsg gb mnhgtm siblci" ti`nlo sg jgrrirgb DlbgMutputZtrgi`/ Qgrdgjtm/ Gs bm qug sg qulgrg" vgrcic= Qiri qu eiy qugprgmjupirsg cg jgrrir bms dbuhms= Eiy virlms `mtlvms piri rgjeizir gb jclfm iotgrlmr y`iocirbm i uo lodlgrom `ujem pgmr qug gb qug sudrgo bms mnhgtms gbl loicms pmr gbrgjmbgjtmr cg nisuri8

    i, Eisti qug gb rgjmbgjtmr cg nisuri ijtg" gb irjelvm pgr iogjgrinlgrtm/ Zl sg lotgotiri nmrrirbm m vmbvgrbm i inrlr" sg irrmhiri uoigxjgpjlo qug locljiri qug gb irjelvm gst inlgrtm y go usm/

    n, Bi tirgi cgb rgjmbgjtmr cg nisuri jmoslstg go blngrir `g`mrli cg bmsmnhgtms H ivi qug om sg usio" om blngrir rgjursms cgb slstg impgritlvm %gstrujturis cg citms" gtj/,/ Bi olji `iogri bl pli cgblngrir rgjursms cgb ZM usicms pmr bms mnhgtms H ivi gs usir tmcmsjbmsg%," clspmsg%, qug sg gojirfugo cg bbi`ir ib jclfm cgbl plgzi gsjrltm gspgjdlji`gotg piri jici pbitidmr i %sugbg gstirgsjrltm go J m J++,/

    Ibfuoms prmfri`icmrgs sg mbvlcio cg jgrrir bms smjkgts y bms dbuhms juiocm tgr loiocg usirbms y jmbmjio gb jclfm cg bl plgzi cgotrm cgb `tmcm dloiblzg%, %gstg `tmcm gsbbi`icm pmr gb rgjmbgjtmr cg nisuri juiocm sg clspmog i nmrrir ibfo mnhgtm piri gb juibom gxlstgo rgdgrgojlis,/ Is" bms rgjursms cgb ZM sg blngriro juiocm gb mnhgtm sgigbl loicm pmr gb rgjmbgjtmr cg nisuri/ Go fgogrib" gsti prjtlji rgsubti ogdisti/

    Zupmofi`ms" pmr ghg`pbm" uo prmfri`i qug inrg `ujems irjelvms y om bms jlgrri/Qugcg sujgcgr qug gb b ltg cg dljegrms inlgrtms ic ltlcm pmr gb ZM sg ibjiojg slo qug gbrgjmbgjtmr cg nisuri eiyi ijtuicm y" pmr gocg" slo qug sg eiyi bbi`icm i dloiblzg%,"cmocg rgslcg gb jclfm cg bl plgzi; pugs gb rgjmbgjtmr sbm g`plgzi i pmogrsg ogrvlmsm yi idlbirsg bis uis juiocm qugci pmji `g`mrli go bi plbi" om juiocm qugcio pmjmsrgjursms blnrgs piri gb slstg`i mpgritlvm/ Go gstg jism" gb prmfri`i sg jmbfiri m sgrilojipiz cg inrlr `s irjelvms/

    Omti8 Zl uo smjkgt om gst go usm pgrm pgr iogjg inlgrtm" omsg pmcr utlblzir gb pugrtm bmjib ismjlicm/ Woi vgz jgrricm" gbslstg`i mpgritlvm pmcr rgutlblzir gb pugrtm piri mtrm smjkgt/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    44/115

    Lotrmcujjlo rplci i hivi/ogt y hivi/olm/ J`m eijgr uo jeit go hivi/

    @lfugb ofgb Inlo" >11>-13 Qfloi 33 cg 993

    Ipirtg" sl sg jmodi go gb rgjmbgjtmr cg nisuri y go bi bl plgzi cg rgjursms cgotrm cgdloiblzg%," gb jm`pmrti lgotm cgb prmfri`i sgr cldgrgotg go jici l pbg`gotijlo cg bi@TH " pugs jici uoi tlgog sus tjoljis piri gb rgjmbgjtmr cg nisuri8 go bis qug gbrgjmbgjtmr dugri `uy ijtlvm" duojlmoiri nlgo; go bis qug om" pmcri prmvmjir dibbmslogxpbljinbgs i sl pbg vlsti/ Bi pgmr sltuijlo sg ciri go bis l pbg`gotijlmogs slorgjmbgjtmr cg nisuri %bi gspgjldljijlo cg bi @TH gstinbgjg jbiri`gotg qug gb rgjmbgjtmr cgnisuri gs pmtgstitlvm," tpljis cg bms clspmsltlvms pgqugms/

    Bms prmnbg`is cgrlvicms cg om jgrrir bms smjkgts g`pgmrio bms jmrrgspmoclgotgs i`iotgogr inlgrtms bms dbuhms cg GZ ismjlicms i irjelvms8 bms smjkgts `iotlgogo uoijmogxlo nlclrgjjlmoib qug itrivlgsi bis rgcgs qug `gclio gotrg bis `qulois cmocggsto/ Qiri `iotgogrbi" sg usio `ujems rgjursms cgb slstg`i mpgritlvm y sg prmcujg uojmostiotg govm cg citifri`is LQ gotrg bis `qulois/ Om jgrrir bms smjkgts juiocm sg eitgr loicm cg usirbms jmostltuyg uo jbirm cgspgrcljlm cg rgjursms/

    Juiocm uo smjkgt om sg jlgrri jmrrgjti`gotg pmrqug bi ipbljijlo ei dibbicm" gbslstg i mpgritlvm pugcg tircir loutms go jmosgfulr jgrrirbm/ Cgpgoclgocm cg bi @TH ycgb ZM" bi cgsipirljlo cg uo smjkgtslo eijgr iotgs uo jbmsg%, pugcg sgr lotgrprgtici

    pmr gb smjkgt cgb mtrm gxtrg`m jm`m uoi dibti cg govm cg citms" y gstg btl m smjkgtpugcg jmbfirsg eisti qug sg jlgrrg gb prmfri`i/

    Omti8 Cgscg bi vgrslo 9/: cg bi H >ZG sg pugcg cgsijtlvir gbdbuhm cg gotrici cg uo smjkgt slo cgsijtlvir gb cg siblci" y

    vljgvgrsi/ Bms `tmcms punblj vmlc seutcmwoLoput%, termwsLMGxjgptlmo y punblj vmlc seutcmwoMutput%, termwsLMGxjgptlmo sg utlblzio piri gsg prmpsltm/ Gstms `tmcmsrm`pgo gb jirjtgr nlclrgjjlmoib cg bis jm`uoljijlmogs SJQ

    I`nms sg pugcgo usir go jmogxlmogs cg tlpm ESSQ8 gbjblgotg eijg uoi pgtljlo y bbi`i i seutcmwoMutput%,/ Gbsgrvlcmr lotgrprgti gstm jm`m qug gb jblgotg ei ijinicm supgtljlo" pgrm qug pugcg rgjlnlr citms/

    Omti8 Cg uo smjkgt jgrricm pugcg mntgogrsg su LogtIccrgss"su pugrtm" su clrgjjlo bmjib y su pugrtm bmjib/

  • 7/23/2019 Introduccin rpida a java.net y java.nio

    45/115

    ettp8www/hivielspiom/mrf

    @lfugb ofgb Inlo" >11>-13 Qfloi 37 cg 993

    :/3 Wo ghg`pbm cg ipbljijlo jblgotg-sgrvlcmr jmo hivi/ogt

    Qiri mstrir bi l pbg gotijlo go H ivi cg bms pisms piri gsjrlnlr ipbljijlmogsjblgotg-sgrvlcmr" lojbuym gstg ghg`pbm8

    l pmrt hivi/ogt/(;l pmrt hivi/lm/(;

    ((( Gsti jbisg govi uo nrgvg gosihg i bms jblgotgs qug sg jmogjtio y jlgrri bi jmogxlo/( Om pugcg itgocgr i bi vgz i `s cg uo jblgotg/ Zl eiy ibfo grrmr ib lotgotir govlir gb `gosihg( ib jblgotg %pmr ghg`pbm" pmrqug sg ei jgrricm tris jmogjtirsg," bi ipbljijlo sg jlgrri/(punbljjbiss ^gflstrmJmogxlmogs {

    punbljstitljvmlc `ilo%Ztrlof irfs[P, {

    ZgrvgrZmjkgt smjkgtZgrvlcmr 0oubb;Zmjkgt smjkgtJblgotg 0oubb;QrlotVrltgr siblci 0oubb;

    Zg jrgi gb smjkgt cg sgrvlcmr go gb pugrtm 3111try {

    smjkgtZgrvlcmr 0ogwZgrvgrZmjkgt%3111,;}

    jitje %LMGxjgptlmo g9, {Zystg /mut/prlotbo%.Om sg ei pmclcm irriojir gb sgrvlcmr/.,;

    Zg lotgoti jgrrir gb smjkgt cg sgrvlcmr/ld%smjkgtZgrvlcmr )0oubb,

    try {smjkgtZgrvlcmr/jbmsg%,;

    } jitje %LMGxjgptlmo g>, { Om sg eijg oici

    }Zystg /gxlt%-9,;

    }

    welbg %trug, { nujbg lodloltmtry {

    Zg ijgptio pgtljlmogs cg bms jblgotgs/smjkgtJblgotg 0 smjkgtZgrvlcmr/ijjgpt%,;

    Zg inrg uo dbuhm cg siblci/siblci 0ogwQrlotVrltgr%smjkgtJblgotg/fgtMutputZtrgi %,,;

    Zg ugstri lodmr ijlo smnrg bi jmogxlo gotriotg y sg govi uo gosihg ib jblgotg/Zystg /mut/prlotbo%.Jmogxlo cgb jblgotg jmo clrgjjlo . +

    smjkgtJblgotg/fgtLogtIccrgss%,/fgtEmstIccrgss%, +. pmr gb pugrtm . +

    smjkgtJblgotg/fgtQmrt%,,;siblci/prlotbo%.Embi y icls.,;siblci/jbmsg%