Sobes.tech
Junior — Middle

Εξήγησε τη δομή της ιεραρχίας εξαιρέσεων στη γλώσσα Java και τα χαρακτηριστικά τους

sobes.tech AI

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

Στην Java, η ιεραρχία των εξαιρέσεων βασίζεται στην κλάση Throwable, η οποία έχει δύο κύριες υποκλάσεις:

  • Error — σφάλματα που σχετίζονται με τη μηχανή εικονικής (π.χ., OutOfMemoryError), συνήθως δεν χειρίζονται στον κώδικα.
  • Exception — εξαιρέσεις που μπορούν και πρέπει να χειριστούν.

Με τη σειρά τους, η Exception διαιρείται σε:

  • Ελεγχόμενες εξαιρέσεις (Checked exceptions) — απαιτούν υποχρεωτικό χειρισμό ή δήλωση στη υπογραφή της μεθόδου (π.χ., IOException).
  • Μη ελεγχόμενες εξαιρέσεις (Unchecked exceptions) — κληρονομούν από το RuntimeException (π.χ., NullPointerException), δεν απαιτούν υποχρεωτικό χειρισμό.

Χαρακτηριστικά:

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

Παράδειγμα:

try {
    // κώδικας που μπορεί να προκαλέσει IOException
} catch (IOException e) {
    e.printStackTrace();
}

Έτσι, η ιεραρχία των εξαιρέσεων βοηθά στη δομή της διαχείρισης σφαλμάτων και στη διαχωρισμό διαφορετικών τύπων προβλημάτων.