Sobes.tech
Middle

Δώστε ένα παράδειγμα σφάλματος που συμβαίνει σε επίπεδο JVM.

sobes.tech AI

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

Για παράδειγμα, OutOfMemoryError. Είναι ένα κρίσιμο σφάλμα που συμβαίνει όταν η JVM δεν μπορεί να εκχωρήσει ένα αντικείμενο λόγω έλλειψης μνήμης στη στοίβα (heap), και ο συλλέκτης απορριμμάτων δεν μπορεί να ελευθερώσει αρκετό χώρο.

// Παράδειγμα κώδικα που μπορεί να προκαλέσει OutOfMemoryError
import java.util.ArrayList;
import java.util.List;

public class MemoryErrorExample {

    public static void main(String[] args) {
        List<Object> list = new ArrayList<>();
        try {
            while (true) {
                list.add(new Object()); // Συνεχής προσθήκη αντικειμένων μέχρι να εξαντληθεί η μνήμη
            }
        } catch (OutOfMemoryError e) {
            System.err.println("Προκλήθηκε κρίσιμο σφάλμα: OutOfMemoryError");
            e.printStackTrace(); // Εμφανίζει το ίχνος της στοίβας του σφάλματος
        }
         System.out.println("Το πρόγραμμα έχει τερματίσει."); // Αυτή η γραμμή πιθανώς δεν θα επιτευχθεί
    }
}