Ποιες εξαιρέσεις, που χρησιμοποιούνται για τον έλεγχο σφαλμάτων, γνωρίζεις και εφαρμόζεις στην πρακτική σου;
sobes.tech AI
Απάντηση από AI
Στην Java, χρησιμοποιούνται διάφοροι τύποι εξαιρέσεων για τη διαχείριση σφαλμάτων και εξαιρετικών καταστάσεων. Ακολουθούν οι κύριες κατηγορίες και παραδείγματα:
-
Ελεγχόμενες εξαιρέσεις (checked exceptions) — απαιτούν υποχρεωτική διαχείριση ή δήλωση στη μέθοδο:
IOException— σφάλματα εισόδου/εξόδουSQLException— σφάλματα κατά την εργασία με βάσεις δεδομένωνClassNotFoundException— κλάση δεν βρέθηκε
-
Μη ελεγχόμενες εξαιρέσεις (unchecked exceptions) — κληρονομούν από
RuntimeException, δεν απαιτούν υποχρεωτική διαχείριση:NullPointerException— πρόσβαση σε nullIllegalArgumentException— μη έγκυρο επιχείρημαIndexOutOfBoundsException— εκτός ορίων πίνακα ή λίστας
-
Σφάλματα (Errors) — σοβαρά προβλήματα, συνήθως δεν διαχειρίζονται:
OutOfMemoryErrorStackOverflowError
Στην πράξη, συνήθως διαχειρίζονται τις ελεγχόμενες εξαιρέσεις για να διασφαλίσουν τη σταθερότητα, και ελέγχουν τις μη ελεγχόμενες για να αποτρέψουν αποτυχίες.
Παράδειγμα διαχείρισης εξαιρέσεων:
try {
FileReader file = new FileReader("file.txt");
// εργασία με το αρχείο
} catch (IOException e) {
e.printStackTrace();
// λογική διαχείρισης σφάλματος
}
Είναι σημαντικό να επιλέγετε τον κατάλληλο τύπο εξαιρέσεως και να τον διαχειρίζεστε εκεί όπου μπορείτε να επαναφέρετε σωστά τη λειτουργία του προγράμματος ή να τερματίσετε σωστά τη λειτουργία.