Junior — Middle
Μπορούν να προκύψουν εξαιρέσεις που δεν ελέγχονται ρητά κατά την εκτέλεση του προγράμματος;
sobes.tech AI
Απάντηση από AI
Ναι, στη Java υπάρχουν μη ελεγχόμενες (unchecked) εξαιρέσεις που δεν απαιτούν ρητή δήλωση ή χειρισμό στον κώδικα. Για παράδειγμα, RuntimeException και οι υποκλάσεις της (NullPointerException, IllegalArgumentException κ.ά.). Τέτοιες εξαιρέσεις μπορεί να προκύψουν κατά την εκτέλεση του προγράμματος και δεν χρειάζεται απαραίτητα να περικλείονται σε try-catch ή να δηλώνονται σε throws.
Αντίθετα, οι ελεγχόμενες (checked) εξαιρέσεις απαιτούν είτε χειρισμό είτε δήλωση στη υπογραφή της μεθόδου.
Παράδειγμα μη ελεγχόμενης εξαιρέσεως:
public void divide(int a, int b) {
int result = a / b; // μπορεί να προκαλέσει ArithmeticException σε διαίρεση με το μηδέν
}
Εδώ, η ArithmeticException είναι μια μη ελεγχόμενη εξαίρεση, και ο μεταγλωττιστής δεν θα επιβάλει να τη χειριστεί κανείς ρητά.