Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di al3
    Registrato dal
    Jan 2002
    Messaggi
    101

    [java] errore exception in thread main...

    Essendo neofita di JAva ho iniziato a studiare il corso Java online di html.it.
    Ho istallato Jdeveloper e Jcreator,
    provando a far girare persone.java, scaricato tra gli esempi delle prime lezioni,
    mi da il seguente errore:


    Exception in thread main
    java.lang.NoSuchMethodError: void persone.main(java.lang.String[])
    Press any key to continue...


    Come mai mi da questo errore? Devo cambiare qualche settaggio?
    il codice di persone.java e':


    class persone
    {
    public int annodinascita;
    public String Cognome=new String();
    // Costruttori
    public persone(int annonascita)
    {
    this("Non Conosco");
    this.annodinascita=annonascita;
    }

    public persone(String Cognome)
    {
    this(0);
    this.Cognome=Cognome;
    }

    public persone(int annonascita , String Cognome)
    {
    annodinascita=annonascita;
    this.Cognome=Cognome;
    }

    // Funzione che calcola l'etā del soggetto;
    public int calcolaeta ( int annoattuale )
    {
    return ( annoattuale - annodinascita );
    }
    }
    ... č l'hip hop che sta ingoiando la mia vita dal di dentro!

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    manca il main

    public static void main(String[] args) {
    new persone(1980);
    }

  3. #3
    Utente di HTML.it L'avatar di al3
    Registrato dal
    Jan 2002
    Messaggi
    101
    Originariamente inviato da floyd
    manca il main

    public static void main(String[] args) {
    new persone(1980);
    }
    ehm... scusami l'ignoranza, ma dove va copiata questa parte di codice?
    ... č l'hip hop che sta ingoiando la mia vita dal di dentro!

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    dentro la classe

  5. #5
    Utente di HTML.it L'avatar di al3
    Registrato dal
    Jan 2002
    Messaggi
    101
    nulla da fare, ancora mi da' lo stesso errore

    e' giusto cosi', vero?!
    class persone
    {
    public int annodinascita;
    public String Cognome=new String();
    // Costruttori



    public persone(int annonascita)
    {
    this("Non Conosco");
    this.annodinascita=annonascita;
    }

    public persone(String Cognome)
    {
    this(0);
    this.Cognome=Cognome;
    }

    public persone(int annonascita , String Cognome)
    {
    annodinascita=annonascita;
    this.Cognome=Cognome;
    }

    // Funzione che calcola l'etā del soggetto;
    public int calcolaeta ( int annoattuale )
    {
    return ( annoattuale - annodinascita );
    }

    public static void main(String[] args) {
    new persone(1980);
    }
    }
    ... č l'hip hop che sta ingoiando la mia vita dal di dentro!

  6. #6
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    dā uno stack overflow error
    i costruttori con un parametro si chiamano a vicenda

    nel main ci va
    new persone(1980, "surname");

    nei costruttori ci va
    public persone(int annonascita)
    {
    this("Non Conosco", annonascita);
    this.annodinascita=annonascita;
    }

    public persone(String Cognome)
    {
    this(0, Cognome);
    this.Cognome=Cognome;
    }

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    Ma l'hai compilato ?

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    72
    Perché dentro il costruttore....

    public persone(String Cognome) {

    this(0); // qui chiama il costruttore con interi
    this.Cognome=Cognome;
    }

    ...chiami il costruttore con interi come argomenti

    Il quale....

    public persone(int annonascita) {
    this("Non Conosco"); // ora chiamo quello con String
    this.annodinascita=annonascita;
    }

    ...chiama ricorsivamente quello con String creando un ciclo

    Il codice:

    class persone {
    public int annodinascita;
    public String Cognome=new String();
    // Costruttori
    public persone(int annonascita) {
    this("Non Conosco");
    this.annodinascita=annonascita;
    }
    public persone(String Cognome) {
    annodinascita=0;
    this.Cognome=Cognome;
    }
    public persone(int annonascita , String Cognome) {
    annodinascita=annonascita;
    this.Cognome=Cognome;
    }
    //Funzione che calcola l'etā del soggetto;
    public int calcolaeta ( int annoattuale ) {
    return ( annoattuale - annodinascita );
    }
    public static void main(String[] args) {
    persone p=new persone(1980);

    System.out.println(p.calcolaeta(2002));
    }
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.