Hola mundo, hola Java

lasecreObjetivo: escribir un primer programa en Java y verificar el entorno de compilación y ejecución.

Una vez instaladas las herramientas de desarrollo llega el momento sublime del rito de iniciación. Sea cual sea tu lenguaje de programación, si quieres que las cosas te vayan bien como programador necesitarás invocar a los dioses del código para que te insuflen el don del buen hacer, la inspiración algorítmica y la creatividad. Y esto sólo se logra de un modo: escribiendo un primer programa que imprima en pantalla el texto Hola mundo. Cualquier otra frase, una simple variación, y sería una apuesta segura hacia el fracaso.

Toma tu editor de texto plano favorito y escribe el siguiente código:

public class HolaMundo
{
  public static void main(String[] args)
  {
    System.out.println("Hola mundo");
  }
}

No te preocupes ahora si no comprendes su significado. La misión principal del primer programa no es otra sino la verificación de que nuestro entorno de desarrollo está correctamente instalado y conocer los rudimentos básicos de la compilación y ejecución en Java.

Si no puedes evitar trastear, presta atención a la instrucción

System.out.println("Hola mundo");

El texto que figure dentro de los paréntesis, rodeado entre comillas dobles, será, obviamente, el que aparecerá impreso.

Guarda el fichero y ponle de nombre HolaMundo.java

Es muy importante que el nombre del fichero coincida exactamente con el que aparece en la línea

public class HolaMundo

Cuando digo coincidencia exacta me estoy refiriendo también a las mayúsculas y minúsculas. Java distingue entre ambas y aunque a tu sistema operativo pueda no importarle el asunto, a Java sí.

Fíjate en la extensión del fichero. El código fuente en Java se almacena en ficheros con extensión .java

C:\javacode>dir
 El volumen de la unidad C no tiene etiqueta.
 El número de serie del volumen es: FC32-C34D

 Directorio de C:\javacode

14/03/2013  11:38    <DIR>          .
14/03/2013  11:38    <DIR>          ..
14/03/2013  11:50               117 HolaMundo.java
               1 archivos            117 bytes
               2 dirs  39.903.391.744 bytes libres

Para compilar el programa ejecutamos el comando

javac HolaMundo.java

Si todo va bien no te aparecerá ningún error:

C:\javacode>javac HolaMundo.java

C:\javacode>

En caso contrario se te mostrará un informe que te dará buenas pistas de lo que puede estar sucediendo. Típicamente será un error de sintaxis en el código fuente; asegúrate de que esté escrito tal cual aparece aquí. Otros errores comunes en la primera compilación son que no se encuentre el programa javac en el PATH de búsqueda (algo que explicamos en el artículo anterior), que la variable de entorno CLASSPATH no contenga el directorio actual (.), o que emplees codificación UTF-8 con BOM. Si te atascas tratando de resolver estos problemas, siéntete libre de dejar un comentario en el blog, por si puedo ayudarte.

Si todo va bien, un nuevo fichero habrá entrado en escena:

C:\javacode>dir
 El volumen de la unidad C no tiene etiqueta.
 El número de serie del volumen es: FC32-C34D

 Directorio de C:\javacode

14/03/2013  12:07    <DIR>          .
14/03/2013  12:07    <DIR>          ..
14/03/2013  12:07               422 HolaMundo.class
14/03/2013  12:06               114 HolaMundo.java
               2 archivos            536 bytes
               2 dirs  41.376.903.168 bytes libres

Menuda sorpresa… Tal vez esperabas encontrar un HolaMundo.exe; en su lugar te ha aparecido HolaMundo.class.

La compilación no nos ha generado código ejecutable directamente por el sistema operativo. En su lugar, aparece una suerte de código intermedio, denominado bytecode, que será ejecutado mediante una máquina virtual Java. En este esquema reside la clave de la portabilidad de Java, pues el bytecode es el independiente de la plataforma.

Para saludar al mundo y cumplir el guión del ritual, escribimos:

C:\javacode>java HolaMundo
Hola mundo

Observa que no es necesario indicar la extensión .class. De hecho, hacerlo provocaría un error.

Suelo decir que cuando uno hace funcionar un “Hola mundo”, ya tiene recorrida la mitad del camino aprendiendo un lenguaje. El resto será fácil…

Javier Montero Gabarró


Hola mundo, hola Java


El texto de este artículo se encuentra sometido a una licencia Creative Commons del tipo CC-BY-NC-ND (reconocimiento, no comercial, sin obra derivada, 3.0 unported)


El Club del Autodidacta


Índice completo de artículos sobre Java.

12 opiniones en “Hola mundo, hola Java”

  1. Hola, Java 🙂
    Me ha gustado mucho tu manera de plantear el artículo. Otras introducciones que he visto por ahí son exasperantemente densas. Esta es directa al grano y muy clara y concreta.

  2. Hola he descubierto tu blog y me parece muy bueno. Estoy intentando aprender un poco de Java y al hacer esto de hola mundo tengo una duda. Dónde se guarda el archivo de texto?
    Gracias

    1. Hola Miguel:
      Puedes guardar el fichero .java en cualquier carpeta. Lo normal es que te crees una para tus propios desarrollos en Java.
      Eso sí, asegúrate de que has incluido en el PATH del sistema la ruta al compilador Java y a la máquina virtual, de modo respondan correctamente cuando los llames desde la carpeta en la que guardas tus proyectos.
      Saludos!

  3. No he podido, Me dice que public no se reconoce como un comando interno o externo. Programa o archivo por lotes ejecutables

    1. Qué tal:
      Cuando digo que el nombre debe ser el que se dice en la línea “public class HolaMundo”, me refiero a que debe ser HolaMundo.java, cuidando las mayusculas y minúsculas de HolaMundo, y no que lo llames “public class HolaMundo”.
      Saludos

  4. Gracias anticipadas Javier por esta iniciativa !

    Me parece tener el mismo problema que Borys.
    En el intérprete de comandos aparece:

    “javac” no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.

    ¿Es posible que a pesar de haber instalado el JDK, no tenga aún el archivo “javac.exe”?
    De hecho lo busco manualmente y no lo encuentro ¿Qué pasó entonces?

    1. Buenos días:
      No, eso no tendría sentido. Asegúrate de que te has descargado el el JDK y no el JRE (que no contiene el compilador). El ejecutable del compilador deberá aparecerte en la carpeta bin dentro del directorio en el que se haya instalado el JDK.
      Saludos

Deja un comentario