Excepción en pequeño programita del libro PENSANDO EN JAVA Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException:0

Hola a todos!!!
soy nuevo programando en java
este código lo obtuve de el libro pensando en java
estoy intentando correr este programa y me aparece esta excepción, he intentado cambiar la carpeta
de workspace de eclipse o otra ruta, reinstale eclipse y aún así me sigue mandando el mismo error? =(
por favor alguien tiene alguna idea?
esta es la excepción que me aparece cuando ejecuto el programa
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at ShowArgs.main(ShowArgs.java:5)

public static void main(String[] args) {
System.out.println(args[0]);
System.out.println(args[1]);
System.out.println(args[2]);
}
}

utilizo Eclipse SDK
Versión: 3.6.1
Build id: M20100909-0800

Espero que alguien pueda ayudarme
de antemano muchas gracias

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de JaimeItlzc

Args

Esto es porque cuando el programa Java tiene acceso a la matriz "args" para los argumentos de línea de comandos o programa, intenta obtener elementos de la matriz está fuera de las matrices límites (el índice utilizado es mayor que el número de elementos de matriz - 1).

Para solucionar este problema, necesitará pasar argumentos de programa o argumentos de línea de comandos al ejecutar el programa de Java que los espera. La sección información adicional siguiente muestra cómo especificar argumentos de programa en el IDE.

También puede colocar un bloque try-catch alrededor del código que tiene acceso a los argumentos de programa. Este código debería detectar un ArrayIndexOutOfBoundsException.

Y de hecho ese ejemplo es para enseñarte la Expception ArrayIndexOutOfBoundsException.
Como en este ejemplo:

import java.io.*;

      class App1_2
      {
         public static void main(String args[])
         {

      // uncomment the next line to make the program catch the exception:
      //  try {
             int nMonth = Integer.parseInt(args[0]);
          int nDay   = Integer.parseInt(args[1]);
          int nYear  = Integer.parseInt(args[2]);

          int nDayInYear = 0;

          for (int nM = 0; nM < nMonth; nM++)
          {
           switch(nM)
           {

           case 4: case 6: case 9: case 11:
              nDayInYear +=30;
              break;

           case 2:
              nDayInYear +=28;

              if (((nYear % 4) == 0) && ((nYear % 100) != 0))
              {
               nDayInYear++;
              }
              break;

              default:
              nDayInYear += 31;
           }
          }

          nDayInYear += nDay;

          System.out.print (nMonth + "-" + nDay + "-" + nYear);
          System.out.println (" is day number "
                  + nDayInYear
                  + " in the year");
         }

      // uncomment this section to make the program catch the exception:
      // } catch (ArrayIndexOutOfBoundsException e) {
      //   System.out.println("This program takes 3 parameters: ");
      //   System.out.println("  month day year.");
      // }

      }