Komunikat o błędzie: java.lang.NullPointerException - co robić?
Kompilator sprawdza zapisany program pod kątem wszystkiego oprócz jednego: wyjątków czasu wykonywania. Takim wyjątkiem jest na przykład wyjątek NullPointerException, który należy do niezbędnego pakietu java.lang w języku programowania Java.
Kiedy kompilator zgłasza wyjątek java.lang.NullPointerException?
Wyjątki często występują podczas fazy testowej. Dotyczy to w szczególności wyjątku NullPointerException, który jest zwykle spotykany jako początkujący, jeśli chodzi o programowanie. Mówiąc dokładniej, jest to zmienna wskazująca pusty obiekt. Na przykład błąd występuje w następujących przypadkach:
- Gdy element tablicy jest dostępny, a element nie ma wartości.
- Podczas zapytania o długość tablicy, której wartość wynosi zero.
- Jeśli obiekt został utworzony bez operatora New i podejmowana jest próba wykonania operacji ze zmienną referencyjną.
- W naszym przykładzie pilot jest praktycznie zmienną odniesienia (wskaźnikiem), która wskazuje na rzeczywisty obiekt drukarki. Ta zmienna służy do wykonywania operacji, takich jak wysyłanie komunikatów o błędach do drukarki, obliczanie poziomów atramentu itp. Jeśli pilot zdalnego sterowania wskazuje na pusty obiekt lub na żaden obiekt, zmienna odniesienia ma wartość zero.
Jak naprawić komunikat o błędzie
Wyjątki można wychwycić pod Javą za pomocą bloku „ try {...} catch {(Exception e)} ”. Jednak ta metoda nie zawsze jest konieczna i powoduje również narzut. Lepiej pamiętać o następujących wskazówkach:
- Sprawdź, czy Twój obiekt został utworzony. Jeśli tak nie jest, utwórz go, używając składni komendy „ nazwa obiektu próbki = nowy obiekt próbki (zmienne); ”.
- W trybie debugowania możesz sprawdzać kod po linii i wyświetlać wyniki pośrednie. Upewnij się, że nie nadpisujesz utworzonego obiektu ani nie zapisujesz go z wartością NULL. Oznacza to, że obiekt nie jest już dostępny, a kolejne polecenia obiektu powodują błąd.
- Wskazówka: Jeśli często zmieniasz obiekt, przyzwyczaj się do sprawdzania go przed i po podstawowych zmianach za pomocą zapytania if („ if (przykładowy obiekt ! = NULL) {...} ”).
W następnej praktycznej wskazówce wyjaśnimy, jak korzystać z wyrażeń lambda w Javie.