W3docs

Programa Java Hello World

Escribe, compila y ejecuta tu primer programa Java — el clásico Hello World — y comprende cada parte del archivo fuente.

Todo tutorial de lenguaje de programación comienza con el mismo ritual: un pequeño programa que imprime Hello, World!. La versión de Java tiene más código repetitivo que la mayoría de los lenguajes, pero cada parte de ese código repetitivo es algo que volverás a ver. Este capítulo analiza el programa línea por línea y luego muestra cómo compilarlo y ejecutarlo.

Esta página asume que ya tienes un JDK instalado; si no es así, revisa primero Cómo instalar Java.

Puedes editar el ejemplo a continuación y presionar Run — en realidad compila y se ejecuta en el servidor:

java— editable, runs on the server

El programa completo

Aquí está el archivo fuente completo. Por convención, se guardaría como HelloWorld.java — Java requiere que el nombre del archivo coincida con el nombre de la clase pública.

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Análisis línea por línea

public class HelloWorld

Todo programa Java vive dentro de una clase. Una clase es un plano que agrupa datos y comportamiento juntos — la piedra angular de la programación orientada a objetos. Aquí la clase se llama HelloWorld, y la palabra clave public significa que es visible desde cualquier otra clase.

La convención es que los nombres de clase usen UpperCamelCase: HelloWorld, BankAccount, Order.

public static void main(String[] args)

Este es el punto de entrada del programa — el método que la JVM llama cuando lanzas tu código. La firma es precisa: cambia cualquier parte y la JVM no lo encontrará.

  • public — la JVM necesita llamarlo desde fuera de la clase.
  • static — puede ser llamado sin crear primero una instancia de HelloWorld.
  • void — no devuelve un valor.
  • main — el nombre especial que busca la JVM.
  • String[] args — un array de argumentos de línea de comandos pasados cuando el programa inicia. Puedes nombrarlo como quieras (args es lo convencional).

System.out.println("Hello, World!");

System es una clase de la biblioteca estándar; out es un campo estático en ella que contiene el flujo de salida estándar; println es un método en ese flujo que imprime su argumento seguido de una nueva línea.

"Hello, World!" es un literal de string — una secuencia de caracteres encerrada entre comillas dobles. Los strings son fundamentales en Java; una vez que te sientas cómodo aquí, Java Strings cubre lo que puedes hacer con ellos.

Toda sentencia Java termina con un punto y coma (;). El compilador se quejará si olvidas uno. Para las reglas más amplias — espacios en blanco, llaves, identificadores — consulta Java Syntax.

Compilar y ejecutar desde la terminal

Si tienes el JDK en tu PATH (consulta los dos capítulos anteriores), puedes compilar y ejecutar desde cualquier terminal:

# Save the source as HelloWorld.java, then:
javac HelloWorld.java       # compiles to HelloWorld.class
java HelloWorld             # runs the bytecode

Salida:

Hello, World!

Ten en cuenta que pasas HelloWorld a java, no HelloWorld.class ni HelloWorld.java. El lanzador java toma el nombre de clase completamente cualificado y encuentra el archivo .class correspondiente en el classpath.

Prueba una variación

Edita el ejemplo ejecutable para imprimir otra cosa — tu nombre, el año actual, un mensaje multilínea — y presiona Run. Algunas ideas:

System.out.println("Hello from Java " + System.getProperty("java.version"));
System.out.println("Line 1");
System.out.println("Line 2");
System.out.printf("%s is %d years old%n", "Ada", 36);

Los últimos dos métodos que debes conocer:

  • println — imprime su argumento y una nueva línea.
  • print — como println pero sin la nueva línea al final.
  • printf — formato estilo printf, como en C. %s inserta un string, %d un número entero, y %n una nueva línea apropiada para la plataforma. Consulta Java String Formatting para el conjunto completo de especificadores de formato.

Errores comunes de principiantes

Algunas cosas que suelen atrapar a los recién llegados:

  • Nombre de archivo incorrecto. Una public class HelloWorld debe estar en un archivo llamado HelloWorld.java. De lo contrario, javac genera un error.
  • Punto y coma faltante. Cada sentencia necesita uno. Los mensajes de error del compilador suelen ser claros sobre qué línea falla.
  • Println vs println. Java distingue entre mayúsculas y minúsculas.
  • Comillas tipográficas. Copiar código de un sitio web que "amablemente" convirtió " en " producirá un error de compilador desconcertante.

Qué viene después

Cómo compilar y ejecutar un programa Java profundiza en lo que realmente hacen javac y el lanzador java, incluyendo el classpath, los paquetes y el uso de jshell para experimentos rápidos sin un programa completo. Para anotar tu código a medida que crece, consulta Java Comments.

Práctica

Práctica
¿Cuál es la firma correcta del punto de entrada de un programa Java?
¿Cuál es la firma correcta del punto de entrada de un programa Java?
Was this page helpful?