Sobes.tech
Junior

Τι είναι η κατασκευή try-catch στη C#;

sobes.tech AI

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

Η δομή try-catch στη C# χρησιμοποιείται για την αντιμετώπιση εξαιρέσεων. Το μπλοκ try περιέχει κώδικα που ενδέχεται να προκαλέσει εξαίρεση. Αν προκύψει εξαίρεση, η εκτέλεση μεταβαίνει στο μπλοκ catch, όπου μπορεί να πιαστεί και να διαχειριστεί η εξαίρεση.

try
{
    // Κώδικας που μπορεί να προκαλέσει εξαίρεση
    int result = 10 / int.Parse("0"); // Θα προκαλέσει DivideByZeroException
}
catch (DivideByZeroException ex)
{
    // Διαχείριση της συγκεκριμένης εξαίρεσης DivideByZeroException
    Console.WriteLine("Σφάλμα διαίρεσης με το μηδέν: " + ex.Message);
}
catch (FormatException ex)
{
    // Διαχείριση της συγκεκριμένης εξαίρεσης FormatException
    Console.WriteLine("Σφάλμα μορφής: " + ex.Message);
}
catch (Exception ex)
{
    // Διαχείριση οποιασδήποτε άλλης εξαίρεσης
    Console.WriteLine("Γενικό σφάλμα: " + ex.Message);
}
finally
{
    // Αυτό το μπλοκ εκτελείται πάντα, ανεξάρτητα αν υπήρξε εξαίρεση ή όχι.
    // Χρησιμοποιείται για απελευθέρωση πόρων.
    Console.WriteLine("Το μπλοκ finally εκτελέστηκε.");
}
  • Μπλοκ try: Περιέχει κώδικα στον οποίο μπορεί να προκύψει εξαίρεση.
  • Μπλοκ catch: Πιάνει την εξαίρεση. Μπορεί να υπάρχουν πολλαπλά μπλοκ catch για διαφορετικούς τύπους εξαιρέσεων. Το μπλοκ catch (Exception ex) πιάνει όλους τους τύπους εξαιρέσεων.
  • Μπλοκ finally: Είναι ένα προαιρετικό μπλοκ που εκτελείται πάντα, ανεξάρτητα αν ρίχτηκε ή πιάστηκε εξαίρεση. Χρησιμοποιείται συχνά για απελευθέρωση πόρων, όπως περιγραφείς αρχείων ή συνδέσεις δικτύου.

Η χρήση του try-catch επιτρέπει την κομψή διαχείριση απρόβλεπτων σφαλμάτων, αποτρέποντας το σπάσιμο του προγράμματος και παρέχοντας στον χρήστη πιο ενημερωμένο μήνυμα σφάλματος.