Documentación visual de Java

Aprende Java viendo qué pasa por dentro.

Diagramas animados, bytecode paso a paso y la máquina virtual explicada sin humo. Todo lo que ocurre entre tu código y la salida.

  • 40 capítulos
  • 6 secciones de contenido
  • De Java 8 a Java 25
terminal
  1. javac HelloWorld.java
  2. java HelloWorld
  3. ¡Hola, mundo!
/para escribir

javap -c es la etapa 3 de la rutaVer la ruta

La ruta

Del código a la pantalla, sin cajas negras

Cinco etapas. La misma ruta que sigue tu programa cada vez que ejecutas java.

Abre una etapa para ver el detalle. También funciona con Enter.

  1. Escribes una clase con un método main y un mensaje.

  2. Revisa los tipos y traduce tu código a bytecode.

  3. Instrucciones portables que cualquier JVM entiende.

  4. Carga la clase, verifica el bytecode y lo ejecuta.

  5. El programa escribe el resultado en la salida estándar.

El camino

Un recorrido progresivo en 6 etapas: del Hola, mundo al código que se sostiene

Cada etapa se apoya en la anterior. Puedes leerlo de corrido o ir directo a lo que necesitas hoy.

  1. Fundamentos

    La JVM, los tipos y el control de flujo. Empiezas con un Hola, mundo y ves qué hace javac por ti.

    9 capítulos
  2. Programación Orientada a Objetos

    Clases, encapsulamiento, herencia e interfaces, con diagramas de memoria que se leen de un vistazo.

    10 capítulos
  3. Collections y Streams

    Listas, mapas y conjuntos, más el pipeline funcional de Stream: qué colección usar y cuándo.

    6 capítulos
  4. Concurrencia

    Hilos, estados, locks y memoria compartida. Lo que rompe en producción, explicado igual de claro.

    6 capítulos
  5. Biblioteca estándar

    Fechas, zonas horarias, dinero exacto y archivos: la biblioteca estándar que se toca todos los días.

    7 capítulos
  6. Calidad

    Comprobaciones que dicen la verdad: qué asertar, cómo aislar el mundo exterior y cómo se escribe un test con JUnit 5.

    2 capítulos

Modo de lectura

Tu versión, sin perder el contexto

El selector oculta del índice y la navegación lo que aún no existía en tu LTS. Si abres un capítulo más reciente por su enlace directo, te avisa en vez de borrarlo. Una página por tema, sin duplicar URLs; el parámetro ?v= comparte tu modo.

Java 8

Fuera de esta versión

public record Punto(int x, int y) {}

Records no aparece en el índice. Si llegas al capítulo por un enlace, verás un aviso: necesita Java 17, la primera LTS con records.

Java 17

Disponible en esta versión

public record Punto(int x, int y) {}

El mismo capítulo aparece en el índice y puedes leerlo sin aviso de incompatibilidad. El código y la ruta son los mismos.

Comparación ilustrada, no otro selector. Las novedades dentro de un capítulo llevan su versión indicada.

Elige tu LTS en la documentación

Una muestra real

Así se ve un capítulo

¿Qué guarda un BigDecimal? Este fragmento del ejemplo DecimalScale te enseña el entero sin escala, la escala y la precisión, en ese orden.

Código Java

Fragmento del método main, con java.math.BigDecimal importado.

BigDecimal price = new BigDecimal("19.90");
System.out.println(price.unscaledValue());
System.out.println(price.scale());
System.out.println(price.precision());

Salida

Las tres primeras líneas de la salida publicada.

1990
2
4

19.90 se representa como 1990 multiplicado por diez elevado a menos 2. Tiene cuatro dígitos de precisión, no dos.

Lee el capítulo de BigDecimal

Visualizaciones

Los estados de un hilo, paso a paso

El ciclo de vida de un Thread. El diagrama se entiende completo sin JavaScript; con los controles puedes probar cada transición y ver cuáles acepta la máquina virtual.

  1. NEWEl hilo existe, pero todavía nadie llamó a start().
  2. RUNNABLEEstá en la cola del planificador esperando su turno de CPU.
  3. BLOCKEDOtro hilo tiene el monitor y este se quedó esperando el lock.
  4. WAITINGHizo wait() o join(): aguarda que otro hilo lo despierte.
  5. TERMINATEDEl run() volvió o lanzó una excepción: ya no vuelve.

Estado actual: NEW

NEW: El hilo existe, pero todavía nadie llamó a start().

Tu siguiente paso: un capítulo.

Abre el índice, elige tu versión y empieza por Hola, mundo. Si ya tienes una duda concreta, busca el tema y ve directo a su explicación.

Con JavaScript, abre la búsqueda con Ctrl + K o ⌘ + K. En esta portada, / enfoca el terminal cuando está listo y no estás escribiendo en otro campo.

Elige qué leer hoy