Compila bien, pero no ejecuta !! Solucionado

Iniciado por Vingilot, 6 Enero 2008, 13:43 PM

0 Miembros y 1 Visitante están viendo este tema.

Vingilot

Hola, estoy comenzando con el lenguaje de java siguiendo un manual en el que viene todo muy bien, pero justo llegue a la parte de programas orientados a objetos y tengo problemas al ejecutar el codigo es:

class Marciano
{
   boolean vivo;
   private static int numero_marcianos = 0;
   final String Soy = "marciano";

void quienEres()
{
   System.out.println("Soy un " + Soy);
}

Marciano()
{
   vivo = true;
   numero_marcianos++;
}

void muerto()
{
   if(vivo)
  {
     vivo = false;
     numero_marcianos--;
   }
}
}


Se compila sin problemas, pero cuando le doy a "run" me sale este fallo:

----jGRASP exec: java Marciano

java.lang.NoSuchMethodError: main
Exception in thread "main"
----jGRASP wedge2: exit code for process is 1.
----jGRASP: operation complete.


Tambien intente correrlo con el applet y con debugg, sin resultados, seguramente será algún fallo tonto o que no lo ejecuto como debería, agradecería su ayuda.

Gracias de antemano y un saludo.

byebye

yo no estoy muy puesto en java, pero añade esto a ver que tal:


public static void main(String args[])
{
  Marciano a = new Marciano();
  a.quienEres();
}



Vingilot

#2
Gracias ^^ poniendo eso bajo la linea    class marciano {

Funciona al parecer el programa ^^, luego mirare el motivo aunque sospecho que será algo parecido a C, que estaban definidas las funciones pero no se las llamaba.

Muchas gracias ^^.

zogeid

Tu programa no tenia un metodo main que iniciase el proceso de ahi que no te funcionara, no es que estuviese definido y no llamado esq ni estaba llamado ni definido.

salud!

Vingilot

Ya veo, llevo poco con este lenguaje, pense que quieneres() era un función, o su equivalente en Java de lo que es una función en C, y que al aplicar a.quieneres(); era como llamar a la función con el argumento "a", de todas maneras aún me queda mucho por leer y probar.

Gracias por la aclaración zogeid.