Correggi gli errori di runtime comuni in Java con un attento debug

Considera il seguente segmento di Giava codice, memorizzato in un file chiamato JollyMessage.java:

 // Sullo schermo viene scritto un messaggio jolly!
classe Jollymessage
{
public static void main (String [] args) {
// Scrivi il messaggio nella finestra del terminale
System.out.println ("Ho Ho Ho!");
}
}

All'esecuzione del programma, questo codice produrrà un messaggio di errore di runtime. In altre parole, un errore è stato fatto da qualche parte, ma l'errore non verrà identificato quando il programma è compilato, solo quando lo è correre.

Debug

Nell'esempio sopra, si noti che la classe si chiama "Jollymessage" mentre si chiama il nome file JollyMessage.java.

Java fa distinzione tra maiuscole e minuscole. Il compilatore non si lamenterà perché tecnicamente non c'è nulla di sbagliato nel codice. Creerà un file di classe che corrisponde esattamente al nome della classe (ad esempio, Jollymessage.class). Quando esegui il programma chiamato JollyMessage, riceverai un messaggio di errore perché non esiste alcun file chiamato JollyMessage.class.

instagram viewer

L'errore che ricevi quando esegui un programma con il nome sbagliato è:

Eccezione nel thread "main" java.lang. NoClassDefFoundError: JollyMessage (nome errato: JollyMessage).. 

Soluzioni comuni di errore di runtime

Se il programma viene compilato correttamente ma non viene eseguito correttamente, rivedere il codice per errori comuni:

  • Virgolette singole e doppie non corrispondenti
  • Virgolette mancanti per le stringhe
  • Operatori di confronto errati (ad es., Non usare doppi segni di uguale per indicare l'assegnazione)
  • Riferimenti a oggetti che non esistono o che non esistono usando le maiuscole fornite nel codice
  • Fare riferimento a un oggetto che non ha proprietà

Lavorare in ambienti di sviluppo integrati come Eclipse può aiutarti a evitare errori di tipo "typo".

Per eseguire il debug di programmi Java produttivi, esegui il debugger del browser Web: dovresti visualizzare un messaggio di errore esadecimale che può aiutarti a isolare la causa specifica del problema.

In alcune situazioni, il problema potrebbe non risiedere nel codice, ma nella Java Virtual Machine. Se la JVM sta soffocando, potrebbe causare un errore di runtime nonostante la mancanza di una mancanza nella base di codice del programma. Un messaggio di debug del browser aiuterà a isolare il codice causato da errori causati da JVM.

instagram story viewer