Sobes.tech
Junior — Middle

Ποιες εξαιρέσεις, που χρησιμοποιούνται για τον έλεγχο σφαλμάτων, γνωρίζεις και εφαρμόζεις στην πρακτική σου;

sobes.tech AI

Απάντηση από AI

Στην Java, χρησιμοποιούνται διάφοροι τύποι εξαιρέσεων για τη διαχείριση σφαλμάτων και εξαιρετικών καταστάσεων. Ακολουθούν οι κύριες κατηγορίες και παραδείγματα:

  • Ελεγχόμενες εξαιρέσεις (checked exceptions) — απαιτούν υποχρεωτική διαχείριση ή δήλωση στη μέθοδο:

    • IOException — σφάλματα εισόδου/εξόδου
    • SQLException — σφάλματα κατά την εργασία με βάσεις δεδομένων
    • ClassNotFoundException — κλάση δεν βρέθηκε
  • Μη ελεγχόμενες εξαιρέσεις (unchecked exceptions) — κληρονομούν από RuntimeException, δεν απαιτούν υποχρεωτική διαχείριση:

    • NullPointerException — πρόσβαση σε null
    • IllegalArgumentException — μη έγκυρο επιχείρημα
    • IndexOutOfBoundsException — εκτός ορίων πίνακα ή λίστας
  • Σφάλματα (Errors) — σοβαρά προβλήματα, συνήθως δεν διαχειρίζονται:

    • OutOfMemoryError
    • StackOverflowError

Στην πράξη, συνήθως διαχειρίζονται τις ελεγχόμενες εξαιρέσεις για να διασφαλίσουν τη σταθερότητα, και ελέγχουν τις μη ελεγχόμενες για να αποτρέψουν αποτυχίες.

Παράδειγμα διαχείρισης εξαιρέσεων:

try {
    FileReader file = new FileReader("file.txt");
    // εργασία με το αρχείο
} catch (IOException e) {
    e.printStackTrace();
    // λογική διαχείρισης σφάλματος
}

Είναι σημαντικό να επιλέγετε τον κατάλληλο τύπο εξαιρέσεως και να τον διαχειρίζεστε εκεί όπου μπορείτε να επαναφέρετε σωστά τη λειτουργία του προγράμματος ή να τερματίσετε σωστά τη λειτουργία.