W3docs

Introducción a la programación en Java

Aprende qué es Java, cómo encajan la JVM y el JDK, y el papel que juega Java en el desarrollo de software moderno.

Java es un lenguaje de programación de propósito general, estáticamente tipado y orientado a objetos, diseñado para la portabilidad. Los programas se compilan en bytecode que se ejecuta en la Java Virtual Machine (JVM), por lo que el mismo archivo .class puede ejecutarse en Windows, macOS, Linux o cualquier otro sistema que tenga instalada una JVM compatible. Esa portabilidad — capturada en el eslogan original "write once, run anywhere" — sigue siendo la característica definitoria del lenguaje.

Este capítulo presenta el lenguaje, la plataforma y las partes del ecosistema Java que encontrarás en el resto del libro.

Qué es Java

Java fue lanzado por Sun Microsystems en 1995 y ahora está bajo la tutela de Oracle. Toma su sintaxis de C y C++, pero cambia la gestión manual de memoria por un recolector de basura automático, y elimina características (como la aritmética de punteros y la herencia múltiple de clases) que frecuentemente causan errores en lenguajes de más bajo nivel. El resultado es un lenguaje fácil de aprender, difícil de hacer fallar y muy adecuado para aplicaciones de larga vida mantenidas por equipos grandes.

Características clave que notarás al trabajar en este libro:

  • Tipado estático. Cada variable tiene un tipo conocido en tiempo de compilación, por lo que el compilador detecta muchos errores antes de que el programa se ejecute.
  • Orientado a objetos. El código se organiza alrededor de clases que agrupan datos con los métodos que operan sobre ellos.
  • Portátil. El código fuente se compila en bytecode neutral respecto a la plataforma, ejecutado por cualquier JVM.
  • Gestión de memoria. El recolector de basura recupera los objetos a los que ya no se hace referencia.
  • Multihilo. Los hilos, los bloqueos y las utilidades modernas de concurrencia forman parte de la biblioteca estándar.
  • Compatible con versiones anteriores. Los programas escritos para versiones anteriores de Java casi siempre se ejecutan sin cambios en las versiones más recientes.

Dónde se usa Java

Dado que la JVM se ejecuta en casi todas las plataformas de servidor y escritorio, Java se ha extendido a prácticamente todos los ámbitos del desarrollo de software:

  • Aplicaciones del lado del servidor — la mayoría de los grandes backends de comercio electrónico, banca y empresas utilizan Java (con frecuencia con Spring, Jakarta EE o Quarkus).
  • Aplicaciones Android — la biblioteca estándar de Android es en gran parte una API de Java, incluso cuando las aplicaciones se escriben en Kotlin.
  • Big data y streaming — Hadoop, Spark, Kafka, Flink y Elasticsearch están escritos sobre la JVM.
  • Herramientas y sistemas de construcción — Maven, Gradle, Jenkins y muchas herramientas de CI se ejecutan sobre Java.
  • Embebidos e IoT — tarjetas inteligentes, terminales de punto de venta y controladores industriales.

JDK, JRE y JVM

Los tres acrónimos confunden a los principiantes más que cualquier otra cosa en Java. Aquí está el desglose:

  • JVM (Java Virtual Machine) — el entorno de ejecución que carga el bytecode y lo ejecuta. Cada sistema operativo incluye su propia JVM nativa.
  • JRE (Java Runtime Environment) — la JVM junto con las bibliotecas de clases principales necesarias para ejecutar un programa Java. Es lo mínimo necesario para ejecutar código Java.
  • JDK (Java Development Kit) — el JRE más las herramientas necesarias para compilar y depurar código Java: javac (compilador), jshell (REPL), javadoc (documentación) y otras.

Para escribir Java, instalas el JDK; el JRE viene incluido dentro, por lo que no los instalas por separado. El JDK de Oracle es solo una opción — OpenJDK es la implementación de referencia gratuita y de código abierto, y distribuciones como Eclipse Temurin, Amazon Corretto y Azul Zulu empaquetan el mismo OpenJDK con su propio soporte a largo plazo. Cualquiera de ellas ejecutará el código de este libro; elige una y continúa.

Lo configurarás paso a paso en Java Install y Java Environment Setup.

Un primer vistazo a un programa Java

Escribirás un Hello World completo en Java Hello World Program. Por ahora, así es como luce un programa Java mínimo — el mismo código, compilado y ejecutado en el servidor:

java— editable, runs on the server

Algunas cosas a observar sin preocuparse por cada detalle todavía:

  • Cada programa vive dentro de una clase (aquí, Hello).
  • La ejecución comienza en un método llamado main con la firma public static void main(String[] args).
  • Las sentencias terminan con punto y coma, y los bloques se envuelven en llaves { ... }.
  • System.out.println escribe una línea en la salida estándar.

Versiones de Java y el calendario de lanzamientos

Desde Java 9 (2017), cada seis meses se publica una nueva versión principal, con una versión de Long-Term Support (LTS) cada dos años. Las versiones LTS actuales que más probablemente encontrarás en el trabajo son Java 17 y Java 21. Este libro está escrito para Java 21 y menciona versiones anteriores solo cuando la diferencia es relevante.

Qué cubre este libro

Los capítulos siguientes te llevan desde una instalación fresca del JDK hasta el lenguaje moderno: los fundamentos de la sintaxis, el flujo de control, la programación orientada a objetos, el framework de colecciones, las excepciones, los genéricos, las lambdas y los streams, la E/S, la concurrencia, JDBC, los módulos y las características más recientes como records, tipos sellados, coincidencia de patrones e hilos virtuales. La barra lateral agrupa los capítulos en 28 partes — léelos en orden para seguir un camino guiado, o salta a lo que necesites.

Práctica

Práctica
¿Cuál afirmación sobre Java es correcta?
¿Cuál afirmación sobre Java es correcta?
Was this page helpful?