1.1 ¿ Por qué Java ? 1.2 Objetivos del diseño de Java 1.3 Auge de Java
9 10 11
2. Características de Java
12
2.1 El lenguaje de programación Java 2.1.1 Sencillo 2.1.2 Orientado a objetos 2.1.3 Distribuido 2.1.4 Interpretado 2.1.5 Robusto 2.1.6 Securizado 2.1.7 Independiente de las arquitecturas 2.1.8 Portable 2.1.9 Eficaz 2.1.10 Multitarea 2.1.11 Dinámico 2.2 La plataforma Java 2.2.1 La máquina virtual Java (JVM) 2.2.2 La API Java 2.2.3 Las herramientas de despliegue de las aplicaciones 2.2.4 Las herramientas de ayuda al desarrollo 2.3 Ciclo de diseño de un programa Java 3. Instalación del SDK versión Win32 para el entorno Windows 3.1 Descarga 3.2 Instalación 3.3 Configuración 3.4 Prueba de la configuración del SDK 3.5 Instalación de la documentación del SDK y de las APIs estándar
4. Las diferentes etapas de creación de un programa Java 4.1 Creación de los ficheros fuente 4.2 Compilar un fichero fuente 4.3 Ejecutar una aplicación
31 31 32 34
5. Nuestra primera aplicación Java
35
5.1 Esqueleto de una aplicación 5.2 Argumentos en línea de comando 5.2.1 Principios y utilización 5.2.2 Paso de argumentos a una aplicación Java en tiempo de ejecución
35 37 37 38
Fundamentos del lenguaje 1. Las variables, constantes y enumeraciones 1.1 Las variables 1.1.1 Nombre de las variables 1.1.2 Tipo de variables 1.1.3 Valores por defecto 1.1.4 Valores literales 1.1.5 Conversiones de tipos 1.1.6 Declaración de las variables 1.1.7 Alcance de las variables 1.1.8 Nivel de acceso de las variables 1.1.9 Ciclo de vida de las variables 1.2 Las constantes 1.3 Las enumeraciones 1.4 Los arrays 1.5 Las cadenas de caracteres 2. Los operadores
41 42 42 45 46 47 50 51 51 52 52 53 55 59 64
2.1 Los operadores unarios 2.2 Los operadores de asignación 2.3 Los operadores aritméticos
2.4 Los operadores bit a bit 2.5 Los operadores de comparación 2.6 El operador de concatenación 2.7 Los operadores lógicos 2.8 Orden de evaluación de los operadores 3. Las estructuras de control
66 66 67 68 69 70
3.1 Estructuras de decisión 3.1.1 Estructura If 3.1.2 Estructura switch 3.2 Las estructuras de bucle 3.2.1 Estructura while 3.2.2 Estructura do ... while 3.2.3 Estructura for 3.2.4 Interrupción de una estructura de bucle
70 70 72 74 74 75 75 77
Programación orientada a objetos 1. Introducción
81
2. Puesta en práctica con Java
84
2.1 Creación de una clase 2.1.1 Declaración de la clase 2.1.2 Creación de los campos 2.1.3 Creación de métodos 2.1.4 Los métodos accesores 2.1.5 Constructores y destructores 2.1.6 Campos y métodos estáticos 2.1.7 Las anotaciones 2.2 Utilización de una clase 2.2.1 Creación de una instancia 2.2.2 Inicialización de una instancia 2.2.3 Destrucción de una instancia 2.3 Herencia
2.3.1 this y super 2.3.2 Clases abstractas 2.3.3 Clases finales 2.3.4 Conversión de tipo 2.3.5 La clase Object 2.4 Interfaces 2.4.1 Creación de una interfaz 2.4.2 Utilización de una interfaz 2.5 Clases anidadas 2.5.1 Clases anidadas estáticas 2.5.2 Clases anidadas 2.5.3 Clases anónimas 2.6 Los genéricos 2.6.1 Clases genéricas 2.6.2 Métodos genéricos 2.6.3 Los genéricos y la herencia 2.7 Los paquetes 2.7.1 Creación de un paquete 2.7.2 Utilización e importación de un paquete 3. Gestión de las excepciones
3.1 Los errores de sintaxis 3.2 Los errores de ejecución 3.3 Les errores de lógica 3.3.1 Las excepciones 3.3.2 Recuperación de excepciones 3.3.3 Excepciones asociadas a recursos 3.3.4 Creación y activación de excepciones
165 166 167 167 168 173 176
Aplicaciones gráficas 1. Introducción
179
1.1 Las bibliotecas gráficas 1.1.1 La biblioteca AWT
1.1.2 La biblioteca Swing 1.2 Constitución de la interfaz gráfica de una aplicación 2. Diseño de una interfaz gráfica
180 181 182
2.1 Las ventanas 2.2 La gestión de los eventos 2.3 Aspecto de los componentes 2.4 El posicionamiento de los componentes 2.4.1 FlowLayout 2.4.2 BorderLayout 2.4.3 GridLayout 2.4.4 BoxLayout 2.4.5 GridBagLayout 2.4.6 Sin renderizador 2.5 Los componentes gráficos 2.5.1 La clase JComponent 2.5.2 Visualización de la información 2.5.3 Los componentes de edición de texto 2.5.4 Los componentes de activación de acciones 2.5.5 Los componentes de selección
2.1 Ciclo de vida de un applet 2.1.1 Métodos relacionados con el ciclo de vida del applet 2.1.2 Métodos de gestión del aspecto gráfico del applet 2.2 Construir la interfaz usuario de un applet 2.2.1 Creación de una fuente de caracteres 2.2.2 Obtener las dimensiones del applet 2.2.3 Dibujar los caracteres 2.2.4 Determinar las dimensiones de una cadena
2.3 Las imágenes en los applets 2.3.1 Carga de una imagen 2.3.2 Tratamiento de la imagen 2.3.3 Trazado de la imagen 2.4 Los hilos en los applets 2.4.1 Creación de un nuevo hilo 2.4.2 Definir el tratamiento a efectuar 2.4.3 Lanzar y parar un hilo 2.5 Los sonidos en los applets 3. Despliegue de un applet
284 285 286 287 290 292 292 295 297 298
3.1 Inserción en una página html 3.1.1 Etiqueta 3.1.2 Etiqueta 3.1.3 Etiqueta 3.2 Configuración de un applet 3.2.1 Definir los parámetros 3.2.2 Recuperación de los parámetros en el applet 3.3 Seguridad en un applet 3.4 Comunicación entre applets 3.5 Interacción con el navegador y el sistema 3.5.1 Visualización en la consola 3.5.2 Utilización de la barra de estado del navegador 3.5.3 Visualización de una página html 3.5.4 Obtener ciertas propiedades del sistema
Acceso a las bases de datos 1. Principios del funcionamiento de una base de datos 1.1 Terminología 1.2 El lenguaje SQL 1.2.1 Búsqueda de informaciones 1.2.2 Inserción de datos 1.2.3 Actualización de datos
2. Acceso a una base de datos desde Java 2.1 Presentación de jdbc 2.2 Carga del driver 2.3 Establecer y manipular la conexión 2.3.1 Establecer la conexión 2.3.2 Manipular la conexión 2.4 Ejecución de instrucciones SQL 2.4.1 Ejecución de instrucciones básicas con el objeto Statement 2.4.2 Ejecución de instrucciones configuradas con el objeto PreparedStatement 2.4.3 Ejecución de procedimientos almacenados con el objeto CallableStatement 2.5 Utilización de los juegos de registros con la interfaz Resultset 2.5.1 Posicionamiento en un ResultSet 2.5.2 Lectura de los datos en un ResultSet 2.5.3 Modificación de los datos en un ResultSet 2.5.4 Supresión de datos en un ResultSet 2.5.5 Inserción de datos en un ResultSet 2.6 Gestión de las transacciones 2.6.1 Puesta en marcha de las transacciones 2.6.2 Puntos de salvaguardia 2.6.3 Niveles de aislamiento
1.1 Presentación 1.2 Manipulación de un archivo 1.2.1 Creación de un archivo 1.2.2 Visualización del contenido 1.2.3 Extracción 1.2.4 Actualización 1.2.5 Ejecución 1.3 El manifest
2.1 Presentación 2.2 Ejecución de una aplicación 2.2.1 Desde un navegador 2.2.2 Desde el cache local 2.3 Despliegue de una aplicación 2.3.1 Configuración del servidor Web 2.3.2 Creación del fichero JNLP 2.3.3 Desplegar la aplicación en el servidor 2.3.4 Creación de la página Web de inicio índice