Όπως αναφέρθηκε ήδη σε μια άλλη απάντηση, δεν συνιστάται να συλλάβετε ένα NullPointerException. Ωστόσο, σίγουρα θα μπορούσατε να το πιάσετε, όπως δείχνει το παρακάτω παράδειγμα. Αν και μπορεί να εντοπιστεί ένα NPE, σίγουρα δεν πρέπει να το κάνετε αυτό, αλλά να διορθώσετε το αρχικό πρόβλημα, που είναι η μέθοδος Check_Circular.
Είναι το NullPointerException μια επιλεγμένη εξαίρεση;
Απάντηση: Το NullPointerException δεν είναι επιλεγμένη εξαίρεση. Είναι απόγονος του RuntimeException και δεν είναι επιλεγμένο.
Σε ποια περίπτωση θα απορριφθεί το NullPointerException;
Μια εξαίρεση μηδενικού δείκτη δημιουργείται όταν μια εφαρμογή επιχειρεί να χρησιμοποιήσει null στην περίπτωση όπου απαιτείται ένα αντικείμενο. Αυτά περιλαμβάνουν: Κλήση της μεθόδου παρουσίας ενός μηδενικού αντικειμένου. Πρόσβαση ή τροποποίηση του πεδίου ενός μηδενικού αντικειμένου.
Η εξαίρεση καλύπτει όλες τις εξαιρέσεις;
Δεδομένου ότι η Εξαίρεση είναι η βασική κλάση όλων των εξαιρέσεων, θα πιάσει οποιαδήποτε εξαίρεση.
Γιατί να μην λάβετε εξαίρεση;
Το
catch(Exception) είναι μια κακή πρακτική, επειδή συλλαμβάνει επίσης όλο το RuntimeException (μη επιλεγμένη εξαίρεση). Αυτό μπορεί να είναι συγκεκριμένο για τη Java: Μερικές φορές θα χρειαστεί να καλέσετε μεθόδους που ρίχνουν επιλεγμένες εξαιρέσεις. Εάν αυτό βρίσκεται στο επίπεδο λογικής EJB/επιχειρηματικής σας, έχετε 2 επιλογές - πιάστε τις ή ρίξτε τις ξανά.