Saltar al contenido principal

Java 8

Herbert Schildt

El diseño de Java, su robustez, el respaldo de la industria y su fácil portabilidad han hecho de Java uno de los lenguajes con un mayor crecimiento y amplitud de uso en distintos ámbitos de la industria de la informática. Su gran impacto en el desarrollo web, su protagonismo en el ámbito de las aplicaciones para dispositivos móviles, e incluso su sencillez y dinamismo para crea...

Editorial:
Anaya Multimedia
Año de edición:
2014
Materia:
Informática
ISBN:
978-84-415-3625-8
Páginas:
672
Encuadernación:
Rústica
Colección:
Manuales Imprescindibles
-5%
66,50 €
IVA incluido
70,00 €
No disponible

El diseño de Java, su robustez, el respaldo de la industria y su fácil portabilidad han hecho de Java uno de los lenguajes con un mayor crecimiento y amplitud de uso en distintos ámbitos de la industria de la informática. Su gran impacto en el desarrollo web, su protagonismo en el ámbito de las aplicaciones para dispositivos móviles, e incluso su sencillez y dinamismo para crear aplicaciones de escritorio, hacen de Java la plataforma de desarrollo número uno del mundo.

Herbert Schildt le presenta esta obra a través de un enfoque paso a paso repleto de ejemplos, evaluaciones y proyectos. Comienza con los aspectos básicos, como la forma de compilar y ejecutar un programa Java, para después analizar el núcleo del lenguaje Java. También se describen las funciones más avanzadas y novedosas de Java 8, como la programación de subprocesamiento múltiple, los genéricos, Swing, las expresiones lambda y los métodos de interfaz predeterminado. La obra concluye con una introducción a JavaFX. Al finalizar el libro, dispondrá de una sólida base para programar con Java.

Reseña del Editor

Agradecimientos

Sobre el autor

Sobre el editor técnico

Introducción
La evolución de Java
Java SE 8
Organización del libro
Convenciones
No se necesita experiencia de programación
Requisitos de software
Código fuente

1. Conceptos de Java
Los orígenes de Java
La relación de Java con C y C++
La relación de Java con C#
La contribución de Java a Internet
Applet de Java
Seguridad
Portabilidad
La magia de Java: el código de bytes
Términos principales de Java
Programación orientada a objetos
Encapsulación
Polimorfismo
Herencia
Obtener el kit de desarrollo de Java
El primer programa
Introducir el programa
Compilar el programa
El primer programa de ejemplo línea por línea
Solucionar errores sintácticos
Otro sencillo programa
Otro tipo de datos
Dos instrucciones de control
La instrucción if
El bucle for
Crear bloques de código
Puntos y coma y ubicación
Técnicas de sangrado
Palabras clave de Java
Identificadores en Java
Las bibliotecas de clases de Java
Evaluación de conocimientos

2. Tipos de datos y operadores
Importancia de los tipos de datos
Tipos primitivos de Java
Enteros
Tipos de coma flotante
Caracteres
El tipo boolean
Literales
Literales hexadecimales, octales y binarios
Secuencias de escape de caracteres
Literales de cadena
Variables
Inicializar una variable
Inicialización dinámica
Ámbito y duración de variables
Operadores
Operadores aritméticos
Incremento y decremento
Operadores relacionales y lógicos
Operadores lógicos de cortocircuito
El operador de asignación
Asignaciones abreviadas
Conversión de tipos en asignaciones
Convertir tipos incompatibles
Precedencia de operadores
Expresiones
Conversión de tipos en expresiones
Espaciado y paréntesis
Evaluación de conocimientos

3. Instrucciones de control
Introducir caracteres desde el teclado
La instrucción if
Instrucciones if anidadas
La cadena if-else-if
La instrucción switch
Instrucciones switch anidadas
El bucle for
Variantes del bucle for
Componentes vacíos
El bucle infinito
Bucles sin cuerpo
Declarar variables de control de bucle dentro del bucle for
El bucle for mejorado
El bucle while
El bucle do-while
Utilizar break para salir de un bucle
Usar break como goto
Utilizar continue
Bucles anidados
Evaluación de conocimientos

4. Clases, objetos y métodos
Clases: aspectos esenciales
Formato general de una clase
Definir una clase
Crear objetos
Variables de referencia y asignación
Métodos
Añadir un método a la clase Vehicle
Devolver valores desde un método
Devolver un valor
Utilizar parámetros
Añadir un método con parámetros a Vehicle
Constructores
Constructores con parámetros
Añadir un constructor a la clase Vehicle
Revisión del operador new
Recolección de basura y uso de finalizadores
El método finalize()
La palabra clave this
Evaluación de conocimientos

5. Otros tipos de datos y operadores
Matrices
Matrices de una dimensión
Matrices multidimensionales
Matrices de dos dimensiones
Matrices irregulares
Matrices de tres o más dimensiones
Inicializar matrices multidimensionales
Sintaxis alternativa para declarar matrices
Asignar referencias de matriz
Usar el miembro length
El bucle for de estilo for-each
Iterar por matrices multidimensionales
Aplicar el bucle for mejorado
Cadenas
Crear cadenas
Trabajar con cadenas
Matrices de cadenas
Las cadenas son inmutables
Utilizar una cadena para controlar una instrucción switch
Utilizar argumentos de línea de comandos
Los operadores de orden de bits
Los operadores AND, OR, XOR y NOT de orden de bits
Los operadores de desplazamiento
Asignaciones abreviadas de orden de bits
El operador ?
Evaluación de conocimientos

6. Análisis detallado de métodos y clases
Controlar el acceso a los miembros de una clase
Modificadores de acceso de Java
Pasar objetos a métodos
Cómo pasar argumentos
Devolver objetos
Sobrecargar métodos
Sobrecargar constructores
Recursión
Comprender static
Bloques estáticos
Clases anidadas e internas
Argumentos de longitud variable: varargs
Fundamentos de varargs
Sobrecargar métodos varargs
Varargs y la ambigüedad
Evaluación de conocimientos

7. Herencia
Aspectos básicos de la herencia
Acceso a miembros y herencia
Constructores y herencia
Utilizar super para invocar constructores de superclase
Utilizar super para acceder a miembros de una superclase
Crear una jerarquía multinivel
Cuándo se ejecutan los constructores
Referencias de superclase y objetos de subclase
Reemplazar métodos
Los métodos reemplazados admiten polimorfismo
Por qué reemplazar métodos
Aplicar reemplazo de métodos a TwoDShape
Utilizar clases abstractas
Utilizar final
Evitar reemplazos con final
Evitar la herencia con final
Utilizar final con miembros de datos
La clase Object
Evaluación de conocimientos

8. Paquetes e interfaces
Paquetes
Definir un paquete
Buscar paquetes y CLASSPATH
Breve ejemplo de paquete
Paquetes y acceso a miembros
Ejemplo de acceso a paquetes
Miembros protegidos
Importar paquetes
La biblioteca de clases de Java se incluye en paquetes
Interfaces
Implementar interfaces
Utilizar referencias de interfaz
Variables en interfaces
Ampliar interfaces
Métodos de interfaz predeterminados
Fundamentos de los métodos predeterminados
Un ejemplo más práctico de un método predeterminado
Problemas de herencia múltiple
Usar métodos estáticos en una interfaz
Consideraciones finales sobre paquetes e interfaces
Evaluación de conocimientos

9. Controlar excepciones
La jerarquía de excepciones
Fundamentos del control de excepciones
Utilizar try y catch
Ejemplo de excepción
Consecuencias de una excepción sin capturar
Excepciones para controlar errores con elegancia
Utilizar varias instrucciones catch
Capturar excepciones de subclases
Anidar bloques try
Generar una excepción
Volver a generar una excepción
Análisis de Throwable
Utilizar finally
Utilizar throws
Tres nuevas funciones de excepciones
Excepciones integradas de Java
Crear subclases de excepción
Evaluación de conocimientos

10. Utilizar E/S
E/S de Java se basa en flujos
Flujos de bytes y de caracteres
Clases de flujo de bytes
Clases de flujo de caracteres
Flujos predefinidos
Utilizar los flujos de bytes
Leer entradas de consola
Escribir la salida en la consola
Leer y escribir archivos con flujos de bytes
Entradas desde un archivo
Escribir en un archivo
Cerrar automáticamente un archivo
Leer y escribir datos binarios
Archivos de acceso aleatorio
Utilizar los flujos basados en caracteres de Java
Entrada de consola con flujos de caracteres
Leer caracteres
Leer cadenas
Salida de consola con flujos de caracteres
E/S de archivos con flujos de caracteres
Utilizar FileWriter
Utilizar FileReader
Utilizar envoltorios de tipos de Java para convertir cadenas numéricas
Evaluación de conocimientos

11. Programación de subprocesamiento múltiple
Aspectos básicos del subprocesamiento múltiple
La clase Thread y la interfaz Runnable
Crear un subproceso
Pequeñas mejoras
Crear varios subprocesos
Determinar el final de un subproceso
Prioridades de subprocesos
Sincronización
Utilizar métodos sincronizados
La instrucción synchronized
Comunicar subprocesos con notify(), wait() y notifyAll()
Ejemplo de uso de wait() y notify()
Suspender, reanudar y detener subprocesos
Evaluación de conocimientos

12. Enumeraciones, autoboxing, importación estática y anotaciones
Enumeraciones
Aspectos básicos de las enumeraciones
Las enumeraciones de Java son tipos de clases
Los métodos values() y valueOf()
Constructores, métodos, variables de instancia y enumeraciones
Dos restricciones importantes
Las enumeraciones heredan enum
Autoboxing
Envoltorios de tipos
Aspectos básicos de autoboxing
Autoboxing y métodos
Autoboxing/Unboxing en expresiones
Una advertencia
Importación estática
Anotaciones (metadatos)
Evaluación de conocimientos

13. Genéricos
Aspectos básicos de los genéricos
Un sencillo ejemplo de genéricos
Los genéricos sólo funcionan con tipos de referencia
Los tipos genéricos difieren en función de sus argumentos de tipo
Una clase genérica con dos parámetros de tipo
Formato general de una clase genérica
Tipos vinculados
Usar argumentos comodín
Comodines vinculados
Métodos genéricos
Constructores genéricos
Interfaces genéricas
Tipos sin procesar y código de legado
Inferencia de tipos con el operador de rombo
Supresión
Errores de ambigüedad
Restricciones genéricas
No se pueden crear instancias de parámetros de tipo
Restricciones en miembros estáticos
Restricciones genéricas de matrices
Restricción de excepciones genéricas
Ampliar su estudio de los genéricos
Evaluación de conocimientos

14. Expresiones lambda y referencias de método
Expresiones lambda: Introducción
Fundamentos de las expresiones lambda
Interfaces funcionales
Expresiones lambda en funcionamiento
Bloques de expresiones lambda
Interfaces funcionales genéricas
Expresiones lambda y captura de variables
Generar una excepción desde una expresión lambda
Referencias de método
Referencias de método a métodos static
Referencias de método a métodos de instancia
Referencias de constructor
Interfaces funcionales predefinidas
Evaluación de conocimientos

15. Applet, eventos y otros temas
Aspectos básicos de los applet
Organización y elementos esenciales de los applet
Arquitectura de los applet
Estructura completa de un applet
Inicializar y finalizar applet
Solicitar una nueva operación de dibujo
El método update()
Utilizar la ventana de estado
Pasar parámetros a applet
La clase Applet
Procesar eventos
El modelo de delegación de eventos
Eventos
Orígenes de eventos
Escuchadores de eventos
Clases de evento
Interfaces de escuchador de eventos
Utilizar el modelo de delegación de eventos
Procesar eventos de ratón y de movimiento de ratón
Un sencillo applet de eventos de ratón
Otras palabras clave de Java
Los modificadores transient y volatile
instanceof
strictfp
assert
Métodos nativos
Evaluación de conocimientos

16. Swing: Introducción
Los orígenes y la filosofía de diseño de Swing
Componentes y contenedores
Componentes
Contenedores
Los paneles de contenedores de nivel superior
Administradores de diseño
Un sencillo programa Swing
Análisis del primer ejemplo de Swing
Utilizar JButton
Trabajar con JTextField
Crear un componente JCheckBox
Trabajar con JList
Utilizar clases internas anónimas para procesar eventos
Crear un applet de Swing
Evaluación de conocimientos

17. Presentación de JavaFX
Conceptos básicos de JavaFX
Los paquetes de JavaFX
Las clases Stage y Scene
Nodos y escenas gráficas
Diseños
La clase Application y los métodos de ciclo vital
Iniciar una aplicación de JavaFX
Estructura de una aplicación JavaFX
Compilar y ejecutar un programa de JavaFX
El subproceso de la aplicación
Un sencillo control JavaFX: Label
Utilizar botones y eventos
Fundamentos de eventos
El control Button
Ilustrar el procesamiento de eventos y los botones
Otros tres controles de JavaFX
CheckBox
ListView
TextField
Presentación de efectos y transformaciones
Efectos
Transformaciones
Ejemplo de efectos y transformaciones
A continuación
Evaluación de conocimientos

Apéndice A. Respuestas

Apéndice B. Utilizar comentarios de documentación de Java
Etiquetas javadoc
Formato general de un comentario de documentación
Qué muestra javadoc
Un ejemplo de comentarios de documentación

Índice alfabético

Otros libros del autor

Java 9

Java 9

Herbert Schildt

-5%
75,95 € 72,15 €
  • Añadir a favoritos
Java Manual de Referencia
-5%
50,00 € 47,50 €
  • Añadir a favoritos

Artículos relacionados

Permanecer Humano. La Empresa a Prueba de la Ia
-5%
17,90 € 17,01 €
  • Añadir a favoritos
Una Vida Siempre en Línea

Una Vida Siempre en Línea

Ariadna Vilalta

Cómo la hiperconectividad, los algoritmos y la IA están reconfigurando nuestra mente y nuestras emociones.UN LIBRO PARA ENTENDER QUÉ NOS ESTÁ PASANDO PSICOLÓGICA Y SOCIALMENTE EN LA ERA DIGITAL. La tecnología no solo organiza nuestra vida: está reorganizando nuestra mente. Vivimos conectados de forma permanente. Dormimos con el móvil al lado, trabajamos frente a pantallas, nos ...

-5%
21,90 € 20,81 €
  • Añadir a favoritos
Liderando la Era de la Ia Generativa

Liderando la Era de la Ia Generativa

Adrian Gonzalez Sanchez

Aquí tienes una sinopsis más fluida y natural de 'Liderando la era de la IA generativa', diseñada para captar la atención de un perfil directivo:Liderando la era de la IA generativa: El 'sistema operativo' para el líder modernoEn un mercado saturado de ruido y promesas tecnológicas, este libro no busca ser un manual técnico más, sino el manual de estrategias definitivo para qui...

-5%
28,50 € 27,08 €
  • Añadir a favoritos
Ética de la Inteligencia Artificial

Ética de la Inteligencia Artificial

https://www.dykinson.com/libros/etica-de-la-inteligencia-artificial/9791370471590/En un momento histórico en el que la inteligencia artificial ha dejado de ser una promesa técnica para convertirse en una infraestructura que atraviesa la vida social, este libro ofrece una brújula conceptual y práctica para orientarse en un territorio complejo. La lA se ha convertido en un entorn...

-5%
58,00 € 55,10 €
  • Añadir a favoritos
Jetson Nvidia. Inteligencia Artificial en tu Bolsillo

Jetson Nvidia. Inteligencia Artificial en tu Bolsillo

Daniel / Ignacio Daniel Gomez Gracian

-5%
19,90 € 18,91 €
  • Añadir a favoritos
Introducción Al Chatgpt en Python

Introducción Al Chatgpt en Python

Bruce R. Hopkins / Bruce Hopkins

Abraza el futuro del desarrollo de software y aprendea crear aplicaciones inteligentes utilizando las API de ChatGPTy OpenAI con el lenguaje de programación Python. Introducción al ChatGPT en Python te enseña cómo utilizar ChatGPT mediante programación. Aprenderás los fundamentos de ChatGPT y las API de OpenAI, incluyendo cómo autenticar, enviar solicitudes, generar respues...

-5%
21,95 € 20,85 €
  • Añadir a favoritos
Tsunami

Tsunami

Pablo Vazquez

En los últimos años, más de 10.000 personas han pasado por los cursos de inteligencia artificial de Pablo Vázquez. Personas con perfiles muy diversos, e inquietudes muy similares: «No sé por dónde empezar». «No sé si mi trabajo está en riesgo». «Sé que debería estar haciendo algo, pero no sé el qué». «Tengo hijos, equipo, familia debería poder orientarlos, y no puedo». Es norma...

-5%
21,90 € 20,81 €
  • Añadir a favoritos
Computación Cuántica

Computación Cuántica

Jacinto Velasco Rebolledo

La computación cuántica se ha consolidado como una de las tecnologías más transformadoras de nuestro tiempo. Ante los límites crecientes de la computación clásica, comprender los principios de la mecánica cuántica aplicados al procesamiento de la información se ha convertido en una competencia esencial para quienes aspiran a liderar la próxima revolución tecnológica. Esta obra ...

-5%
55,00 € 52,25 €
  • Añadir a favoritos
Fancy Bear se Lanza Al Phishing

Fancy Bear se Lanza Al Phishing

Scott J. Shapiro

Es una paradoja de nuestros tiempos que vivamos en la sociedad de la información, pero no entendamos cómo funciona. ¿Qué pasaría si supiésemos más? En Fancy Bear se va de phishing, Scott J. Shapiro recurre a su popular clase en la universidad de Yale sobre hackeo para mostrar que el cibercrimen tiene menos que ver con la programación defectuosa que con el cableado imperfecto de...

-5%
31,95 € 30,35 €
  • Añadir a favoritos
Mas Alla de los Datos, el
-5%
15,90 € 15,11 €
  • Añadir a favoritos