Napraw typowe błędy środowiska wykonawczego w Javie dzięki starannemu debugowaniu

Rozważ następujący segment Jawa kod przechowywany w pliku o nazwie JollyMessage.java:

 // Radosna wiadomość jest zapisywana na ekranie!
klasa Jollymessage
{
public static void main (String [] args) {
// Napisz wiadomość do okna terminala
System.out.println („Ho Ho Ho!”);
}
}

Podczas wykonywania programu ten kod wyświetli komunikat o błędzie środowiska wykonawczego. Innymi słowy, gdzieś popełniono błąd, ale błąd nie zostanie zidentyfikowany, gdy program jest skompilowany, tylko kiedy jest biegać.

Debugowanie

W powyższym przykładzie zauważ, że klasa nosi nazwę „Jollymessage”, podczas gdy nazwa pliku jest nazywana JollyMessage.java.

W Javie rozróżniana jest wielkość liter. Kompilator nie narzeka, ponieważ technicznie nie ma nic złego w kodzie. Stworzy plik klasy, który dokładnie pasuje do nazwy klasy (tj. Jollymessage.class). Po uruchomieniu programu o nazwie JollyMessage pojawi się komunikat o błędzie, ponieważ nie ma pliku o nazwie JollyMessage.class.

Błąd pojawiający się po uruchomieniu programu o niewłaściwej nazwie to:

instagram viewer
Wyjątek w wątku „main” java.lang. NoClassDefFoundError: JollyMessage (zła nazwa: JollyMessage).. 

Typowe rozwiązania błędów czasu wykonywania

Jeśli Twój program kompiluje się pomyślnie, ale nie działa podczas wykonywania, sprawdź kod pod kątem typowych błędów:

  • Niedopasowane pojedyncze i podwójne cytaty
  • Brakujące cytaty dla ciągów
  • Niepoprawne operatory porównania (np. Niestosowanie podwójnych znaków równości do wskazania przypisania)
  • Odwoływanie się do obiektów, które nie istnieją lub nie istnieją przy użyciu wielkich liter zawartych w kodzie
  • Odwołanie do obiektu, który nie ma właściwości

Praca w zintegrowanych środowiskach programistycznych, takich jak Eclipse, może pomóc w uniknięciu błędów typu literówka.

Aby debugować produkcyjne programy Java, uruchom debuger przeglądarki internetowej - powinieneś zobaczyć komunikat o błędzie szesnastkowym, który może pomóc w ustaleniu konkretnej przyczyny problemu.

W niektórych sytuacjach problem może nie leżeć w kodzie, ale w wirtualnej maszynie Java. Jeśli JVM dusi się, może wykopać błąd środowiska wykonawczego pomimo braku niedoboru bazy kodu programu. Komunikat debugera przeglądarki pomoże odizolować kod spowodowany błędami JVM.