Cuprins:
Definiție - Ce înseamnă Catch Block?
Un bloc de captură, în C #, este un bloc opțional de cod care este executat la crearea unei excepții.
Catch block este o parte specifică a construcției excepționale de manipulare și este implementată folosind cuvântul cheie „catch” în combinație cu cuvintele cheie „try” și „în sfârșit” și formează mijloacele de implementare a manipulării structurate a excepțiilor. Un bloc de încercare include codul protejat care poate provoca excepția. Înglobește declarații care tratează circumstanțe excepționale și lucrează pentru recuperarea din astfel de condiții neașteptate.
Catch block reprezintă mijloacele de gestionare a excepțiilor. Dacă acestea nu sunt gestionate, acest lucru poate duce la terminarea întregului program până la timpul de execuție .NET. Un bloc de captură poate fi utilizat pentru manipularea oricărei sau a unor excepții specifice.
Techopedia explică Catch Block
Modelul de gestionare a excepțiilor din Common Language Runtime (CLR) permite mai mult de un bloc de capturare, fiecare fiind conceput pentru a gestiona o excepție specifică. Ori de câte ori apare o excepție, CLR caută blocul de captură care gestionează excepția. Dacă metoda de execuție actuală nu conține un astfel de bloc, CLR o caută în metoda care a apelat la metoda curentă până la stiva de apeluri. Dacă nu se găsește nicio clauză de potrivire pentru această excepție în întregul cod, execuția thread-ului este oprită și un mesaj de excepție neinstruit este afișat pentru utilizator.
Următoarele sunt câteva sfaturi legate de utilizarea unui bloc de capturare:
- Tipul de excepție trebuie specificat la blocul de captare numai după ce motivul care apare în urma unor excepții specifice neprevăzute (cum ar fi eșecul catastrofal al sistemului, abuzul API etc.) a fost determinat și recuperarea a fost implementată fără a lăsa aplicația să fie incoerentă sau stare nevalidă.
- Blocul de captură trebuie poziționat astfel încât să fie prinse excepții mai specifice înaintea celor mai puțin specifice.
- Catch block fără parametri este denumit „excepții de mâncare”, deoarece acest lucru poate suprima probleme severe dificil de depanat.
- Catch block-ul poate fi centralizat astfel încât să poată gestiona excepția dintr-o locație centrală.
- Instrucțiunea "aruncăm" poate fi folosită în blocul de capturare pentru care același obiect de excepție trecut în aruncare poate fi trecut din nou în timp ce o reîncărcare.
- Variabilele declarate în cadrul unui bloc de încercare nu pot fi utilizate în afara acestuia.
- Codul nu va reveni la blocul de încercare după ce blocul de captură a fost executat.
- Testarea codului de gestionare a excepțiilor în blocul de captura este esențială pentru a evita ruperea aplicației.
- Catch block nu trebuie utilizat pentru codul de curățare.
- Blocarea de captură fără parametri nu poate fi utilizată pentru manipularea excepțiilor care nu respectă limbajul comun (cele care nu provin din System.Exception).
