Como programar java 9ED, OCR completo cap 1-19 (merged)

  • Published on
    13-Nov-2014

  • View
    3.992

  • Download
    0

Embed Size (px)

DESCRIPTION

Soporta bsqueda de texto , Libro de buena calidad y lo ms completo posible , tambin consta de informacin organizada por captulos en las pestaas de bsquedas

Transcript

  • 1. CO M O PROGRAMAROCR CAPTULOS 1-19PAUL D EITEL H A R V EY D EITEL ALWAYSLEARNINGwww.FreeLibros.mePEARSON

2. ACCESO A LOS CAPTULOS ADICIONALES DEL LIBRO Para acceder a los captulos 12 a 19 (en espaol), 20 a 31 y Apndices M a Q (en ingls) mencionados en el texto, visite el sitio Web de este libro:www.pearsonenespafiol.coin/deitel Utilice una moneda para descubrir el cdigo de acceso. (No use objetos filosos porque podra daarlo).IMPORTANTE: Este cdigo de acceso tiene vigencia de 2 das!Asegrese que el cdigo no aparezca daado ya que slo puede usarse una vez y no ser reemplazado en ningn caso. www.FreeLibros.me 3. www.FreeLibros.me 4. www.FreeLibros.me 5. P R O G Is g M A R NOVENA E D I C l d ^Paul DetelDeitel & Associates, Inc. Harvey DetelDeitel & Associates, Inc. TraductorAlfonso Vidal Romero Elizondo Ingeniero en Sistemas Electrnicos ITESM, Campus Monterrey Revisin tcnicaRoberto Martnez Romn Departamento de Tecnologa de Informacin y Computacin ITESM, Campus Estado de Mxico Domingo Acosta Infante Departamento de Ingeniera en Informtica Instituto Tecnolgico de MoreliaPEARSON www.FreeLibros.me 6. DEITEL, PAUL y HARVEY DEITEL Cmo programar en Java Novena edicin PEARSON EDUCACIN, Mxico, 2012 ISBN: 978-607-32-1150-5 rea: Computacin Formato: 20 X 25.5 cm Pginas: 616Authorized translation from the English language edition entitled JAVA HOW TO PROGRAM, 9thEdition, by Paul Deitel & Harvey Deitel, published by Pearson Education, Inc., publishing as Prentice Hall, Copyright 2012. All rights reserved. ISBN 9780132575669 Traduccin autorizada de la edicin en idioma ingls titulada JAVA HOW TO PROGRAM, 9a. edicin por Paul Deitel y Harvey Deitel, publicada por Pearson Education, Inc., publicada como Prentice Hall, Copyright 2012. Todos los derechos reservados. Esta edicin en espaol es la nica autorizada.Edidn en espaolDireccin Educacin Superior: Mario Contreras Editor Sponsor: Luis Miguel Cruz Castillo e-mail: hiis.cruz@pearson.com Bernardino Gutirrez Hernndez Editor de Desarrollo: Supervisor de Producdn: Jos D. Hernndez Garduo Gerente Editorial Educacin Superior Latinoamrica: Marisa de Anta NOVENA EDICIN, 2012 D.R. 2012 por Pearson Educacin de Mxico, S.A. de C.V. Atlacomulco 500-5o. piso Col. Industrial Atoto 53519, Naucalpan de Jurez, Estado de Mxico Cmara Nacional de la Industria Editorial Mexicana. Reg. nm. 1031. Reservados todos los derechos. Ni la totalidad ni parte de esta publicacin pueden reproducirse, registrarse o transmitirse, por un sistema de recuperacin de informacin, en ninguna forma ni por ningn medio, sea electrnico, mecnico, fotoqumico, magntico o electroptico, por fotocopia, grabacin o cualquier otro, sin permiso previo por escrito del editor. El prstamo, alquiler o cualquier otra forma de cesin de uso de este ejemplar requerir tambin la autorizacin del editor 0 de sus representantes. ISBN VERSIN IMPRESA: 978-607-32-1150-5 ISBN VERSIN E-BOOK: 978-607-32-1151-2 ISBN E-CHAPTER: 978-607-32-1152-9 Impreso en Mxico. Printed in Mxico. 1 2 3 4 5 6 7 8 9 0 - 15 14 13 12PEARSON www.FreeLibros.me 7. En memoria desargento Shriver, 'Elprimer director del Cuerpo de Taz y fundador de numerosas organizaciones sociales: Tor una vida de marcar a diferencia. Paul y Harvey D eitelwww.FreeLibros.me 8. www.FreeLibros.me 9. Contenido xxiiiPrefacioxxxiiiAntes de empezar 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14Introduccin a las computadoras y a Java Introduccin Computadoras: hardware y software Jerarqua de datos Organizacin de una computadora Lenguajes mquina, lenguajes ensambladores y lenguajes de alto nivel Introduccin a la tecnologa de los objetos Sistemas operativos Lenguajes de programacin Java y un tpico entorno de desarrollo en Java Prueba de una aplicacin en Java Web 2.0: Las redes sociales Tecnologas de software Cmo estar al da con las tecnologas de informacin Conclusin2Introduccin a las aplicaciones en Java Introduccin Su primer programa en Java: imprimir una lnea de texto Modificacin de nuestro primer programa en Java Cmo mostrar texto con pri n tf Otra aplicacin en Java: suma de enteros Conceptos acerca de la memoria Aritmtica Toma de decisiones: operadores de igualdad y relacinales Conclusin2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.93 Introduccin a las clases, objetos, mtodos y cadenas3.1 3.2 3-3 3.4 3.5 3.6Introduccin Declaracin de una clase con un mtodo e instanciamiento de un objeto de una clase Declaracin de un mtodo con un parmetro Variables de instancia, mtodos establecery mtodos obtener Comparacin entre tipos primitivos y tipos por referencia Inicializacin de objetos mediante constructores www.FreeLibros.me12 56 810 1113 16 18 22 26 29 31 3237 38 38 44 46 47 52 53 56 6071 72 72 76 79 84 85 10. Contenido883.7 3.8 3.9Los nmeros de punto flotante y el tipo doubl e (Opcional) Caso de estudio de GUI y grficos: uso de cuadros de dilogo Conclusin44.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15Instrucciones de control: Parte I Introduccin Algoritmos Seudocdigo Estructuras de control Instruccin i f de seleccin simple Instruccin i f . .. el se de seleccin doble Instruccin de repeticin whi 1e Cmo formular algoritmos: repeticin controlada por un contador Cmo formular algoritmos: repeticin controlada por un centinela Cmo formular algoritmos: instrucciones de control anidadas Operadores de asignacin compuestos Operadores de incremento y decremento Tipos primitivos (Opcional) Caso de estudio de GUI y grficos: creacin de dibujos simples Conclusin5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10 5.11Instrucciones de control: Parte 2 Introduccin Fundamentos de la repeticin controlada por contador Instruccin de repeticin for Ejemplos sobre el uso de la instruccin for Instruccin de repeticin do. .. whi 1e Instruccin de seleccin mltiple swi tch Instrucciones break y continu Operadores lgicos Resumen sobre programacin estructurada (Opcional) Caso de estudio de GUI y grficos: dibujo de rectngulos y valos Conclusin151 152 152 1546 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9Mtodos: un anlisis ms detallado Introduccin Mdulos de programas en Java Mtodos s t a t i c, campos s t a t i c y la clase Math Declaracin de mtodos con mltiples parmetros Notas acerca de cmo declarar y utilizar los mtodos La pila de llamadas a los mtodos y los registros de activacin Promocin y conversin de argumentos Paquetes de la API de Java Caso de estudio: generacin de nmeros aleatorios 6.9.1 Escalamiento y desplazamiento generalizados de nmeros aleatorios 6.9.2 Repetitividad de nmeros aleatorios para prueba y depuracin Caso de estudio: un juego de probabilidad (introduccin a las enumeraciones) Alcance de las declaraciones Sobrecarga de mtodos (Opcional) Caso de estudio de GUI y grficos: colores y figuras rellenas Conclusin197 198 1986.10 6.11 6.12 6.13 6.14www.FreeLibros.me92 95102103 103 104 104 107 107 112 113 118 125 130 130 134 134138158 162 164 172 173 179 184 187200202205 206 207 208 210 214 214 215 219 222 224 227 11. Contenido77.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 7 .1 07.11 7.12 7.13 7.14 7.15 7.16Arreglos y objetos ArrayList Introduccin Arreglos Declaracin y creacin de arreglos Ejemplos acerca del uso de los arreglos Caso de estudio: simulacin para barajar y repartir cartas Instruccin for mejorada Paso de arreglos a los mtodos Caso de estudio: la clase L i broC al i f i c a c i ones que usa un arreglo para almacenar las calificaciones Arreglos multidimensionales Caso de estudio: la clase L ib ro C a l i f i c a c i o n e s que usa un arreglo bidimensional Listas de argumentos de longitud variable Uso de argumentos de lnea de comandos La clase Arrays Introduccin a las colecciones y la clase A rra y L i st (Opcional) Caso de estudio de GUI y grficos: dibujo de arcos Conclusinix240 241 242 243 244 254 258 259 262 268271 278 279 281 284 286 289Clases y objetos: un anlisis ms detallado Introduccin Caso de estudio de la clase Ti empo Control del acceso a los miembros Referencias a los miembros del objeto actual mediante th is Caso de estudio de la clase Ti empo: constructores sobrecargados Constructores predeterminados y sin argumentos Observaciones acerca de los mtodos Establecer y Obtener Composicin Enumeraciones Recoleccin de basura y el mtodo f i nal i ze Miembros de clase s t a t i c Declaracin s ta tic import Variables de instancia f i nal 8 .1 4 Caso de estudio de la clase T i empo: creacin de paquetes 8.15 Acceso a paquetes 8.16 (Opcional) Caso de estudio de GUI y grficos: uso de objetos con grficos 8.17 Conclusin311 312 312 316 317 320 326 326 328 331 333 334 338 339 340 345 347 3519359 360 361 363 364 364 3708 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 8.10 8. 11 8.12 8.139.1 9.2 9.3 9.4Programacin orientada a objetos: herencia Introduccin Superclases y subclases Miembros protected Relacin entre las superclases y las subclases 9.4.1 Creacin y uso de una clase Empl eadoPorComi s i on 9.4.2 Creacin y uso de una clase Empl eadoBaseMasComi s i on 9.4.3 Creacin de una jerarqua de herencia Empl eadoPorComi s i on9.4.4 9.4.5Empl eadoBaseMasComi sio nLa jerarqua de herencia Empl eadoPorComi s i on-Empl eadoBaseMasComi sion mediante el uso de variables de instancia p rotected La jerarqua de herencia Empl eadoPorComi s i on-Empl eadoBaseMasComi sion mediante el uso de variables de instancia p r i va te www.FreeLibros.me375 377 380 12. xContenido9.5 9.6Los constructores en las subclases Ingeniera de software mediante la herencia9 .7L a clase Obj e c t10 10.1 10.2 10.3 10.4 10.5Programacin orientada a objetos: polimorfismo Introduccin Ejemplos del polimorfismo Demostracin del comportamiento polimrfico Clases y mtodos abstractos Caso de estudio: sistema de nmina utilizando polimorfismo 10.5.1 La superclase abstracta Empl eado 10.5.2 La subclase concreta Empl eadoAsal ari ado 10.5.3 La subclase concreta Empl eadoPorHoras 10.5.4 La subclase concreta Empl eadoPo rComi s i on 10.5.5 La subclase concreta indirecta Empl eadoBaseMasComi sion 10.5.6 El procesamiento polimrfico, el operador i nstanceof y la conversin descendente 10.5.7 Resumen de las asignaciones permitidas entre variables de la superclase y de la subclase Mtodos y clases f i na l Caso de estudio: creacin y uso de interfaces 10.7.1 Desarrollo de una jerarqua PorPagar 10.7.2 La interfaz PorPagar 10.7.3 La clase Factu ra 10.7.4 Modificacin de la clase Empl eado para implementar la interfaz PorPagar 10.7.5 Modificacin de laclase Empl eadoAsal a r i ado para usarla en la jerarqua PorPagar 10.7.6 Uso de la nterfaz PorPagar para procesar objetos F a ctu ra y Empleado mediante el polimorfismo 10.7.7 Interfaces comunes de la API de Java (Opcional) Caso de estudio de GUI y grficos: realizar dibujos usando polimorfismo Conclusin9.8 9.910.6 10.710.8 10.9(Opcional) Caso de estudio de GUI y grfi eos: mostar texto e imgenes usando etiquetas ConclusinI I 11.1 11.2 11.3 11.4 11.5 11.6 11.7 11.8 11.9 11.10 11.11 11.12 11.13Manejo de excepciones: un anlisis ms profundo Introduccin Ejemplo: divisin entre cero sin manejo de excepciones Ejemplo: manejo de excepciones tipo A ritm e tic E x c e p tio n elnputM ism atchException Cundo utilizar el manejo de excepciones Jerarqua de excepciones en Java Bloque fin a lly Limpieza de la pila y obtencin de informacin de un objeto excepcin Excepciones encadenadas Declaracin de nuevos tipos de excepciones Precondiciones y poscondiciones Aserciones (Nuevo en Java SE 7): Clusula catch mltiple: atrapar varias excepciones en un catch (Nuevo en Java SE 7): Clusula t ry con recursos (t ry-with-reso urces): desasignacin automtica de recursos 11.14 Conclusin www.FreeLibros.me385 386 387 388 391 394 395 397 398 400 403 404 407 408 410 412 413 418 418 419 421 422 422 425 427 428 430 431 433 438 439 439 442 447 447 450 454 457 459 460 461 462 463 463 13. ContenidoxiATabla de precedencia de operadoresA -lBConjunto de caracteres ASCIIA-3CPalabras clave y palabras reservadasA-4DA-5Tipos primitivosEUso de la documentacin de la API de Java E. 1 Introduccin E.2 Navegacin por la API de JavaA-6 A-6 A-6FUso del depurador Introduccin Los puntos de interrupcin y los comandos run, stop, cont y p ri nt Los comandos p ri nt y s et Cmo controlar la ejecucin mediante los comandos step, step up y next El comando watch El comando cl ea r ConclusinA-14 A-15 A-15 A-19 A-21 A-24 A-27 A-29GSalida con formato Introduccin Flujos Aplicacin de formato a la salida con pri ntf Impresin de enteros Impresin de nmeros de punto flotante Impresin de cadenas y caracteres Impresin de fechas y horas Otros caracteres de conversin Impresin con anchuras de campo y precisiones Uso de banderas en la cadena de formato de p ri nt f Impresin con ndices como argumentos Impresin de literales y secuencias de escape Aplicacin de formato a la salida con la clase Formatte r ConclusinA-31 A-32 A-32 A-32 A-33 A-34 A-36 A-3 7 A-39 A-41 A-43 A-47 A-47 A-48 A-49HSistemas numricos Introduccin Abreviatura de los nmeros binarios como nmeros octales y hexadecimales Conversin de nmeros octales y hexadecimales a binarios Conversin de un nmero binario, octal o hexadecimal a decimal Conversin de un nmero decimal a binario, octal o hexadecimal Nmeros binarios negativos: notacin de complemento a dosA-54 A-55 A-58 A-59 A-59 A-60 A-62E1 E2 F.3 E4 F.5 F.6 F.7 G.l G.2 G.3 G.4 G.5 G.6 G.7 G.8 G.9 G. 10 G. 11 G.12 G. 13 G .l4 H .l H.2 H.3 H.4 H.5 H.6www.FreeLibros.me 14. x iiI 1.1ContenidoGroupLayout Introduccin Fundamentos de GroupLayout Creacin de un objeto SelectorColores Recursos Web sobre GroupLayoutA-67 A-67 A-67 A-68 A-78JJ.l J.2 J.3 J.4Componentes de integracin Java Desktop Introduccin Pantallas de inicio La clase Desktop Iconos de la bandejaA-79 A-79 A-79 A-81 A-83K K.l K.2 K.3 K.4 K.5 K.6Mashups Introduccin Mashups populares Algunas API de uso comn en mashups Centro de recursos Deitel sobre mashups Centro de recursos Deitel sobre RSS Cuestiones de rendimiento y confiabilidad de los mashupsA-85 A-85 A-85 A-86 A-86 A-87 A-87LUnicode Introduccin Formatos de transformacin de Unicode Caracteres y glifos Ventajas/Desventajasde Unicode Uso de Unicode Rangos de caracteresA-88 A-88 A-89 A-90 A-90 A-91 A-931.21.31.4L.l L2 L.3 L.4 L5 L.6ndiceI-lLos captulos 12a 19 se encuentran en espaol en el sitio W eb del libro12 Caso de estudio del ATM , Parte I : Diseo orientado a objetos con UML 12.1 Introduccin al caso de estudio 12.2 Anlisis del documento de requerimientos 12.3 Cmo identificar las clases en un documento de requerimientos 12.4 Cmo identificar los atributos de las clases 12.5 Cmo identificar los estados y actividades de los objetos 12.6 Cmo identificar las operaciones de las clases 12.7 Cmo indicar la colaboracin entre objetos 12.8 Conclusinwww.FreeLibros.me469 470 470 478 484 489 493 499 506 15. Contenido13 Caso de estudio del ATM , Parte 2: Implementacii de un diseo orientado a objetos 13.1 Introduccin 13.2 Inicio de la programacin de las clases del sistema ATM 13.3 Incorporacin de la herencia y el polimorfismo en el sistema ATM 13.4 Implementacin del caso de estudio del ATM 13.4.1 La clase ATM 13.4.2 Laclase P a n t a ll...