Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Non funziona il metodo Main nei Frame!!! Perchè?

    Salve a tutti,

    sto creando un nuovo software per l'università...

    Allora in sintesi la situazione è questa:
    Ho un file main.java da dove faccio partire il primo frame "Home.java".

    Da questo frame Home.java apro un altro frame "AdminAccess.java" tramite evento di un JButton...

    Negli eventi di questo bottone creo un oggetto AdminAccess e lo rendo visibile tramite setVisible....

    QUINDI in teoria dal momento che creo l'oggetto AdminAccess dovrebbero eseguirsi le istruzioni del metodo main() di quest'ultimo(adminaccess)....Ma purtroppo non si esegue nulla, qualsiasi istruzione io scriva all'interno....è come se non esistesse il metodo main...

    Qualcuno sa dirmi perchè?!?!

    Grazie in anticipo,

    Lorenzo

  2. #2
    Utente di HTML.it L'avatar di progAnd
    Registrato dal
    Jan 2012
    Messaggi
    119
    Il metodo main viene eseguito solo al lancio della virtual machine. Quando istanzi AdminAccess viene eseguito il costruttore. Il metodo setVisible(true) rende visibile la finestra ma non esegue alcun metodo. Se vuoi fargli eseguire il metodo main, devi inserire la chiamata esplicita a tale metodo.

    Ciao

  3. #3
    Semplicemente perchè ti serve un corso di programmazione prima...
    Il metodo main non viene automaticamente(per magia) chiamato in ogni classe in cui lo definisci.
    Il metodo main viene invocato dalla virtual macchine come entry point dell'applicazione. Quindi quando lanci per esempio il comando java MiaClasse la jvm cerca e invoca il metodo main definito in quest'ultima, ma se all'interno della tua classe crei un nuovo oggetto "Pippo" (anche se in quest'ultima hai definito un metodo main) se non sei tu stesso a richiamarlo col cavolo che ti viene richiamato.
    Consiglio : Prima di buttarti a capofitto nella scrittura di codice prova a studiare almeno le basi della programmazione ad oggetti....

  4. #4
    Il primo semestre l'ho fatto tutto sulle basi e le ho capite..semplicemente no mi ricordavo questo enorme particolare...in effetti mi sento un po stupido....

    Cmq grazie ho risolto invocando il metodo.

    Alla prossima

    Ciao a tutti.

    Lorenzo

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 © 2025 vBulletin Solutions, Inc. All rights reserved.