Agradecimientos
Sobre el autor
Introducción
Convenciones
Código fuente
1. Convertirse en programador
Elegir un lenguaje
Indicar al ordenador qué debe hacer
Cómo funcionan los programas
Cuando los programas no funcionan
Seleccionar una herramienta de programación de Java
Instalar una herramienta de desarrollo Java
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
2. Crear su primer programa
Qué necesita para crear programas
Crear el programa Saluton
Iniciar el programa
La instrucción class
Funcionamiento de la instrucción main
Llaves
Almacenar información en una variable
Mostrar el contenido de una variable
Guardar el producto terminado
Compilar el programa en un archivo de clase
Corregir errores
Ejecutar un programa de Java
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
3. Vacaciones en Java
Primera parada: Oracle
Breve historia de Java
Ir a clase con Java
Almuerzo en JavaWorld
Observar los cielos en la NASA
Negocios
Visita a SourceForge
Ejecutar Java en su teléfono
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
4. Funcionamiento de los programas de java
Crear una aplicación
Enviar argumentos a aplicaciones
Biblioteca de clases de Java
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
5. Almacenar y modificar información en un programa
Instrucciones y expresiones
Asignar tipos de variables
Números enteros y de coma flotante
Caracteres y cadenas
Otros tipos de variables numéricas
El tipo de variable boolean
Asignar nombres a sus variables
Almacenar información en variables
Operadores
Incrementar y reducir un valor
Precedencia de operadores
Emplear expresiones
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
6. Usar cadenas para comunicarse
Almacenar texto en cadenas
Mostrar cadenas en programas
Usar caracteres especiales en cadenas
Pegar cadenas
Usar otras variables con cadenas
Procesamiento avanzado de cadenas
Comparar dos cadenas
Determinar la longitud de una cadena
Cambiar las mayúsculas y minúsculas de una cadena
Buscar una cadena
Presentar títulos de crédito
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
7. Usar pruebas condicionales para tomar decisiones
Instrucciones if
Comparaciones menor que y mayor que
Comparaciones de igualdad y no igualdad
Organizar un programa con instrucciones de bloque
Instrucciones if-else
Instrucciones switch
El operador ternario
Mirar el reloj
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
8. Repetir una acción con bucles
Bucles for
Bucles while
Bucles do-while
Salir de un bucle
Asignar un nombre a un bucle
Bucles for complejos
Probar la velocidad de su ordenador
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
9. Almacenar información con matrices
Crear matrices
Utilizar matrices
Matrices multidimensionales
Ordenar una matriz
Contar caracteres de cadenas
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
10. Crear el primer objeto
Funcionamiento de la programación orientada a objetos
Objetos en funcionamiento
Qué son los objetos
Herencia
Crear una jerarquía de herencia
Convertir objetos y variables sencillas
Convertir variables sencillas
Convertir objetos
Convertir variables sencillas en objetos y viceversa
Autoboxing y unboxing
Crear un objeto
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
11. Describir un objeto
Crear variables
Crear variables de clase
Crear comportamiento con métodos
Declarar un método
Métodos similares con argumentos diferentes
Métodos constructores
Métodos de clase
Ámbito de variables con métodos
Incluir una clase en otra
Utilizar la palabra clave this
Usar métodos y variables de clase
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
12. Maximizar los objetos existentes
El poder de la herencia
Heredar el comportamiento y los atributos
Reemplazar métodos
Establecer la herencia
Emplear this y super en una subclase
Trabajar con objetos existentes
Almacenar objetos de la misma clase en listas de matrices
Iterar por una lista de matrices
Crear una subclase
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
13. Crear una interfaz de usuario sencilla
Swing y AWT
Usar componentes
Ventanas y marcos
Botones
Etiquetas y campos de texto
Casillas de verificación
Cuadros combinados
Áreas de texto
Paneles
Crear su propio componente
Resumen
Ejercicios
Preguntas
Respuestas
Actividades
14. Diseñar una interfaz de usuario
Usar administradores de diseño
GridLayout
BorderLayout
BoxLayout
Separar componentes con Insets
Organizar una aplicación
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
15. Responder a entradas del usuario
Hacer que sus programas escuchen
Configurar componentes para ser escuchados
Procesar eventos de usuario
Eventos de casillas de verificación y cuadros combinados
Eventos de teclado
Habilitar y deshabilitar componentes
Completar una aplicación gráfica
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
16. Crear una interfaz de usuario compleja
Controles deslizantes
Escuchadores de cambios
Usar iconos de imagen y barras de herramientas
Tablas
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
17. Almacenar objetos en estructuras de datos
Listas array
Mapas hash
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
18. Procesar errores en un programa
Excepciones
Capturar excepciones en un bloque try-catch
Capturar excepciones diferentes
Controlar algo que no sea una excepción
Generar excepciones
Ignorar excepciones
Excepciones que no necesitan catch
Generar y capturar excepciones
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
19. Crear un programa con subprocesos
Subprocesos
Ralentizar un programa
Crear un subproceso
Trabajar con subprocesos
Declaración class
Configurar variables
El constructor
Capturar errores durante la configuración de URL
Iniciar el subproceso
Ejecutar el subproceso
Procesar clics del ratón
Mostrar enlaces circulares
Detener un subproceso
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
20. Clases internas y clausuras
Clases internas
Clases internas anónimas
Clausuras
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
21. Leer y escribir archivos
Flujos
Archivos
Leer datos de un flujo
Flujos de entrada en búfer
Escribir datos en un flujo
Leer y escribir propiedades de configuración
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
22. Crear servicios Web con JAX-WS
Definir una interfaz de punto final de servicio
Usar anotaciones para simplificar el código de Java
Crear un Bean de implementación de servicio
Publicar el servicio Web
Usar archivos de lenguaje de definición de servicios Web
Crear un cliente de servicio Web
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
23. Crear gráficos Java2D
Usar la clase Font
Usar la clase Color
Crear colores personalizados
Dibujar líneas y formas
Dibujar líneas
Dibujar rectángulos
Dibujar elipses y círculos
Dibujar arcos
Crear un gráfico circular
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
24. Crear aplicaciones de Android
Introducción a Android
Crear una aplicación de Android
Explorar un proyecto nuevo de Android
Crear una aplicación
Configurar un simulador de Android
Crear una configuración de depuración
Ejecutar la aplicación
Diseñar una aplicación real
Organizar recursos
Configurar el archivo de manifiesto de la aplicación
Diseñar una interfaz de usuario
Crear código de Java
Resumen
Preguntas y respuestas
Ejercicios
Preguntas
Respuestas
Actividades
Apéndice A. Usar el entorno de desarrollo integrado NetBeans
Instalar NetBeans
Crear un proyecto nuevo
Crear una nueva clase de Java
Ejecutar la aplicación
Corregir errores
Apéndice B. Recursos para Java
Sitio oficial de Java
Documentación de clases de Java
Otros sitios Web de Java
Workbench
Slashdot
Otros blogs sobre Java
InformIT
Stack Overflow
JavaWorld Magazine
Directorio Java de Developer.com
Twitter
Oportunidades laborales
Apéndice C. Configurar un entorno de desarrollo de Android
Primeros pasos
Instalar Eclipse
Instalar el complemento Android para Eclipse
Configurar su teléfono
Apéndice D. Soluciones de las actividades
Índice Alfabético
Java es uno de los lenguajes de programación más versátiles, al tratarse de una potente, útil y moderna tecnología que utilizan cientos de miles de programadores. Su nueva y revolucionaria versión, Java 8, incorpora numerosas mejoras que la han convertido