Suscripciones ENI: ¡Acceso ilimitado a todos los libros y vídeos de ENI!  Descubrir
  1. Libros
  2. Java - Los fundamentos del lenguaje (con ejercicios corregidos)

Java Los fundamentos del lenguaje (con ejercicios corregidos)

  • 5% de descuento en todos los libros, con el código 5DESCUENTO
  • Disponible. Expedido en 24 horas
  • Envío gratis a partir de 25 € de compra
  • Versión online gratis por un año
  • 5% de descuento en todos los libros, con el código 5DESCUENTO
  • Acceso inmediato durante 10 años
  • Versión online digital, no descargable
  • Acceso ilimitado 24/7, durante 10 años
  • Acceso ilimitado 24/7, durante 10 años
  • Todos los libros online de ENI
  • Más de 5 novedades todos los meses
  • Novedades disponibles el mismo día de su publicación
  • Acceso 100% online

Presentación

Este libro, que abarca hasta la versión 17 de Java, se dirige a todos aquellos informáticos que quieran desarrollar en Java. Tanto si el lector es principiante como si ya tiene experiencia en otros lenguajes, encontrará en este libro todos los aspectos principales necesarios para familiarizarse rápidamente con uno de los lenguajes más utilizados en el mundo.

Después de presentar la plataforma Java SE, cómo se instala en los entornos Windows y Linux e introducir el entorno de desarrollo que se utiliza en el marco del libro (Eclipse, MySQL), el lector estudia los fundamentos del lenguaje y la programación orientada a objetos. Entre la gran variedad y riqueza del API de Java, se pone el foco en el API de gestión de fechas, en las nuevas posibilidades ofrecidas por las interfaces y en la noción de módulos.

Se detallan las expresiones lambda y los API subyacentes como el API java.util.function y el API Stream, antes de estudiar el desarrollo de aplicaciones gráficas con la librería Swing. También se presenta el desarrollo de aplicaciones cliente/servidor con el API JDBC, que proporciona acceso a las bases de datos relacionales.

El despliegue es una fase importante del éxito de una aplicación, por lo que el último capítulo presenta la distribución de una aplicación con la solución clásica basada en los ficheros de archivo o el uso de la herramienta jlink y jpackage.

Los numerosos ejercicios con sus correcciones, le permitirán validar sus conocimientos y poner en práctica las nociones aprendidas, de manera casi inmediata.

Existen elementos complementarios para su descarga en el sitio www.ediciones-eni.com.

Índice

  • Presentación
    • 1. Introducción
    • 2. Historia
      • 2.1 ¿ Por qué Java ?
      • 2.2 Objetivos del diseño de Java
      • 2.3 Auge de Java
    • 3. Las características del lenguaje Java
      • 3.1 Sencillo
      • 3.2 Orientado a objetos
      • 3.3 Distribuido
      • 3.4 Interpretado
      • 3.5 Robusto
      • 3.6 Securizado
      • 3.7 Independiente de las arquitecturas
      • 3.8 Portable
      • 3.9 Eficaz
      • 3.10 Multitarea
      • 3.11 Dinámico
    • 4. La plataforma Java SE
      • 4.1 La máquina virtual de Java (JVM)
      • 4.2 La API Java
        • 4.2.1 Las API básicas
        • 4.2.2 Las API de acceso a los datos y de integración con lo existente
        • 4.2.3 Las API de gestión de la interfaz de las aplicaciones con el usuario
      • 4.3 Las herramientas de despliegue de las aplicaciones
      • 4.4 Las herramientas de ayuda al desarrollo
    • 5. Las diferentes implementaciones de la plataforma
    • 6. El entorno de desarrollo
      • 6.1 Instalación del JDK en Windows
        • 6.1.1 Instalación de la plataforma OpenJDK
        • 6.1.2 Instalación de la plataforma Oracle JDK
        • 6.1.3 Configuración de las variables de entorno
        • 6.1.4 Probar el correcto funcionamiento
      • 6.2 Instalación del JDK en Linux
        • 6.2.1 Instalación de la plataforma OpenJDK
        • 6.2.2 Instalación de la plataforma Oracle JDK
        • 6.2.3 Configuración de la variable JAVA_HOME
        • 6.2.4 Probar el correcto funcionamiento
      • 6.3 Instalación de Eclipse
        • 6.3.1 Descarga del instalador
        • 6.3.2 Instalación de Eclipse
        • 6.3.3 Creación de un proyecto de Java
      • 6.4 Instalación de MySQL
        • 6.4.1 Windows
        • 6.4.2 Linux
        • 6.4.3 Uso de MySQL Workbench
    • 7. La javadoc
      • 7.1 Consulta desde un navegador
      • 7.2 Consulta desde Eclipse
    • 8. Primer programa
      • 8.1 Escritura del código
      • 8.2 Compilación y ejecución del código
        • 8.2.1 Teoría
        • 8.2.2 Implementación
      • 8.3 Utilización de Eclipse
    • 9. Conclusión
  • Fundamentos del lenguaje
    • 1. Anatomía de un programa
    • 2. Las variables
      • 2.1 Introducción
      • 2.2 Las ubicaciones
      • 2.3 El nombre
      • 2.4 Los tipos
        • 2.4.1 Presentación
        • 2.4.2 Los tipos por valor
        • 2.4.3 Los tipos por referencia
      • 2.5 La declaración, la inicialización y la asignación
        • 2.5.1 La declaración
        • 2.5.2 La inicialización
        • 2.5.3 La asignación
      • 2.6 Los tipos por valor
        • 2.6.1 Los tipos numéricos enteros
        • 2.6.2 Los tipos numéricos decimales
        • 2.6.3 El uso de valores literales
        • 2.6.4 El tipo carácter
        • 2.6.5 El tipo booleano
      • 2.7 Los tipos por referencia
        • 2.7.1 Los arrays
        • 2.7.2 Las cadenas de caracteres
        • 2.7.3 La noción de Text Blocks
        • 2.7.4 Las fecha y las horas
      • 2.8 Los valores por defecto
      • 2.9 El ámbito de las variables
      • 2.10 El ciclo de vida de las variables
      • 2.11 La conversión de tipos
        • 2.11.1 Presentación
        • 2.11.2 La conversión entre números
        • 2.11.3 La conversión a una cadena de caracteres
        • 2.11.4 La conversión desde una cadena de caracteres
      • 2.12 La inferencia de tipos
    • 3. Las constantes
    • 4. Las enumeraciones
    • 5. Los argumentos de un programa
      • 5.1 Funcionamiento
      • 5.2 Utilización en Eclipse
    • 6. Los operadores
      • 6.1 Los operadores unarios
      • 6.2 Los operadores de asignación
      • 6.3 Los operadores aritméticos
      • 6.4 Los operadores bit a bit
        • 6.4.1 La representación binaria de los enteros
        • 6.4.2 Las operaciones lógicas
      • 6.5 Los operadores de comparación
      • 6.6 El operador de concatenación
      • 6.7 Los operadores lógicos
      • 6.8 Orden de evaluación de los operadores
    • 7. Las estructuras de control
      • 7.1 Presentación
      • 7.2 Estructuras de decisión
        • 7.2.1 Estructura if
        • 7.2.2 Estructura ternaria
        • 7.2.3 Estructura switch histórica
        • 7.2.4 Estructura switch nueva generación
      • 7.3 Las estructuras de bucle
        • 7.3.1 Estructura while
        • 7.3.2 Estructura do ... while
        • 7.3.3 Estructura for
      • 7.4 Interrupción de una estructura de bucle
        • 7.4.1 break
        • 7.4.2 continue
        • 7.4.3 return
    • 8. Ejercicios
      • 8.1 Ejercicio 1
      • 8.2 Ejercicio 2
      • 8.3 Ejercicio 3
      • 8.4 Ejercicio 4
    • 9. Correcciones
      • 9.1 Ejercicio 1
      • 9.2 Ejercicio 2
      • 9.3 Ejercicio 3
      • 9.4 Ejercicio 4
    • 10. Conclusión
  • Programación orientada a objetos
    • 1. Introducción
    • 2. Puesta en práctica con Java
      • 2.1 Contexto
      • 2.2 Creación de una clase
        • 2.2.1 Declaración de la clase
        • 2.2.2 Creación de los campos
        • 2.2.3 Creación de métodos
        • 2.2.4 Creación de las sobrecargas de métodos
        • 2.2.5 Paso de argumentos
        • 2.2.6 Creación de accesores
        • 2.2.7 Creación de los constructores y destructores
        • 2.2.8 Creación de campos y métodos estáticos
        • 2.2.9 Utilización de las anotaciones
      • 2.3 Utilización de una clase
        • 2.3.1 Creación de una instancia
        • 2.3.2 Inicialización de una instancia
        • 2.3.3 Destrucción de una instancia
      • 2.4 Herencia
        • 2.4.1 Creación de una clase hija
        • 2.4.2 this y super
        • 2.4.3 Clases abstractas
        • 2.4.4 Clases finales
        • 2.4.5 Clases selladas
        • 2.4.6 Conversión de tipo
        • 2.4.7 La clase Object
      • 2.5 Interfaces
        • 2.5.1 Creación de una interfaz
        • 2.5.2 Utilización de una interfaz
        • 2.5.3 Método por defecto
        • 2.5.4 Método estático
        • 2.5.5 Interfaces selladas
      • 2.6 Clases anidadas
        • 2.6.1 Clases anidadas estáticas
        • 2.6.2 Clases internas (de instancia)
        • 2.6.3 Clases anónimas
      • 2.7 Los records
    • 3. Los paquetes
      • 3.1 Presentación
      • 3.2 Creación de un paquete
      • 3.3 Utilización e importación de un paquete
      • 3.4 Importación de los métodos estáticos
    • 4. Los módulos
      • 4.1 Instalación
      • 4.2 Presentación
      • 4.3 El JDK es modular
      • 4.4 Utilización de los módulos
      • 4.5 Creación de un nuevo módulo
    • 5. La gestión de los errores
      • 5.1 Los diferentes tipos de error
        • 5.1.1 Los errores de sintaxis
        • 5.1.2 Los errores de ejecución
        • 5.1.3 Los errores de lógica
      • 5.2 La representación orientada a objetos de los errores
      • 5.3 El tratamiento de las excepciones
      • 5.4 Las excepciones asociadas a recursos
      • 5.5 Utilización de las excepciones
      • 5.6 Creación y activación de excepciones
    • 6. Los genéricos
      • 6.1 Presentación
      • 6.2 Clases genéricas
        • 6.2.1 Definición de una clase genérica
        • 6.2.2 Utilización de una clase genérica
        • 6.2.3 Los métodos genéricos
      • 6.3 Los genéricos y la herencia
      • 6.4 Limitaciones de los genéricos
    • 7. Las colecciones
      • 7.1 Presentación
      • 7.2 La clase ArrayList
      • 7.3 La clase HashSet
      • 7.4 La clase LinkedList
      • 7.5 La clase HashMap
      • 7.6 Streams y pipelines
    • 8. Ejercicios
      • 8.1 Ejercicio 1
      • 8.2 Ejercicio 2
      • 8.3 Ejercicio 3
      • 8.4 Ejercicio 4
    • 9. Correcciones
      • 9.1 Ejercicio 1
      • 9.2 Ejercicio 2
      • 9.3 Ejercicio 3
      • 9.4 Ejercicio 4
  • Las expresiones lambda
    • 1. Introducción
    • 2. Funcionamiento
      • 2.1 Las interfaces funcionales
      • 2.2 Los métodos anónimos
        • 2.2.1 Sintaxis general
        • 2.2.2 Declaración de los argumentos
        • 2.2.3 Declaración del cuerpo
        • 2.2.4 Utilización de variables "externas"
      • 2.3 Las referencias de métodos
        • 2.3.1 Método de instancia
        • 2.3.2 Método de clase
        • 2.3.3 Constructor
      • 2.4 La API java.util.function
        • 2.4.1 Presentación de la API
        • 2.4.2 Utilización
    • 3. Manipulación de las colecciones
      • 3.1 La API Stream
      • 3.2 Teoría
      • 3.3 Obtener un Stream
        • 3.3.1 Obtener un Stream genérico
        • 3.3.2 Obtener un Stream numérico
      • 3.4 Utilizar un Stream
        • 3.4.1 Utilizar un Stream genérico
        • 3.4.2 Utilizar un Stream numérico
      • 3.5 La clase Optional<T>
    • 4. Conclusión
  • Aplicaciones gráficas
    • 1. Introducción
      • 1.1 Las bibliotecas gráficas
        • 1.1.1 La biblioteca AWT
        • 1.1.2 La biblioteca Swing
      • 1.2 Construcción de la interfaz gráfica de una aplicación
    • 2. Diseño de una interfaz gráfica
      • 2.1 Las ventanas
      • 2.2 El thread EDT
      • 2.3 La gestión de los eventos
      • 2.4 Aspecto de los componentes
      • 2.5 El posicionamiento de los componentes
        • 2.5.1 FlowLayout
        • 2.5.2 BorderLayout
        • 2.5.3 GridLayout
        • 2.5.4 BoxLayout
        • 2.5.5 GridBagLayout
        • 2.5.6 Sin renderizador
      • 2.6 Los componentes gráficos
        • 2.6.1 La clase JComponent
        • 2.6.2 Visualización de la información
        • 2.6.3 Los componentes de edición de texto
        • 2.6.4 Los componentes de activación de acciones
        • 2.6.5 Los componentes de selección
      • 2.7 Los cuadros de diálogo
        • 2.7.1 El cuadro para introducir información
        • 2.7.2 El cuadro de mensaje
        • 2.7.3 El cuadro de confirmación
      • 2.8 Los tratamientos largos
        • 2.8.1 Delegar los tratamientos a un thread hijo
        • 2.8.2 Actualizar el GUI desde un thread hijo
        • 2.8.3 Utilizar la classe SwingWorker
    • 3. Conclusión
  • 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 información
        • 1.2.2 Inserción de datos
        • 1.2.3 Actualización de datos
        • 1.2.4 Supresió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 de tipo 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 salvaguarda
        • 2.6.3 Niveles de aislamiento
  • Despliegue de aplicaciones
    • 1. Archivos de Java
      • 1.1 Presentación
      • 1.2 Manipulación de un archivo
        • 1.2.1 Creación de una aplicación
        • 1.2.2 Creación de un archivo
        • 1.2.3 Visualización del contenido
        • 1.2.4 Extracción
        • 1.2.5 Actualización
        • 1.2.6 Ejecución
      • 1.3 El manifest
        • 1.3.1 Presentación
        • 1.3.2 Creación
      • 1.4 La gestión de las dependencias
        • 1.4.1 En un subdirectorio
        • 1.4.2 Dentro del propio archivo
    • 2. Creación de una aplicación autónoma con jlink
      • 2.1 La creación del archivo de Java
      • 2.2 La creación del módulo de la aplicación
      • 2.3 La búsqueda de las dependencias con jdeps
      • 2.4 La creación de la estructura de árbol con jlink
      • 2.5 La adición de dependencias no modulares
      • 2.6 La prueba de la aplicación
    • 3. Externalización de los argumentos
      • 3.1 Creación del archivo de configuración
      • 3.2 Utilización del archivo de configuración
      • 3.3 Despliegue de la aplicación
    • 4. Creación de un instalador con jpackage
    • 5. Conclusión
    • índice

Autor

Thierry RICHARDMás información

Después de 8 años como ingeniero en diferentes empresas y proveedores de servicios digitales, Thierry RICHARD fue formador en ENI École durante 10 años, antes de ocupar el puesto de coordinador técnico dentro de esta misma estructura. Está especializado en técnicas de desarrollo de objetos en entornos .NET y Java. Su experiencia se combina con sus habilidades pedagógicas para proporcionar al lector un libro verdaderamente operativo, sobre el desarrollo de aplicaciones en Java.

Características

  • Nivel Medio a Experto
  • Número de páginas 569 páginas
  • Publicación julio 2022
    • Encuadernación rústica - 17 x 21 cm
    • ISBN: 978-2-409-03687-3
    • EAN: 9782409036873
    • Ref. ENI: RIT17JAV
  • Nivel Experto a Medio
  • Publicación julio 2022
    • HTML
    • ISBN: 978-2-409-03688-0
    • EAN: 9782409036880
    • Ref. ENI: LNRIT17JAV

Descargas

Al completar este formulario, acepta recibir información y comunicaciones comerciales sobre nuestros productos y servicios. Puede darse de baja de nuestra newsletter en cualquier momento. Si desea conocer más información acerca de nuestra política de protección de datos, pulse aquí.
  • Descargar los ejemplos del libro (4 990 Ko))