Junior
Čo je operátor throw v C#?
sobes.tech AI
Odpoveď od AI
Operátor throw sa používa na priame vyvolanie výnimky. Umožňuje prerušiť bežné vykonávanie programu a previesť riadenie na blok spracovania výnimiek.
// Príklad použitia operátora throw
try
{
int[] numbers = { 1, 2, 3 };
int index = 5;
// Ručné vyvolanie výnimky IndexOutOfRangeException
if (index >= numbers.Length)
{
throw new IndexOutOfRangeException("Index je mimo rozsah poľa.");
}
Console.WriteLine(numbers[index]);
}
catch (IndexOutOfRangeException ex)
{
// Spracovanie výnimky
Console.WriteLine($"Chyba: {ex.Message}");
}
Operátor throw môže byť použitý v dvoch formách:
-
throw expression;: Vyvolá novú výnimku, kdeexpressionje inštancia triedy, ktorá dedí odSystem.Exception.throw new ArgumentException("Neplatný argument."); -
throw;: Znovu vyvolá aktuálnu výnimku v blokucatch. To zachová všetky informácie o zásobníku volaní pôvodnej výnimky.try { // Kód, ktorý môže vyvolať výnimku } catch (FileNotFoundException ex) { // Dodatočné spracovanie alebo logovanie Console.WriteLine($"Súbor sa nenašiel: {ex.FileName}"); // Znovu vyvolať výnimku pre ďalšie spracovanie vyššie v zásobníku throw; }
Použitie throw je dôležité pre:
- Signalizáciu chýb alebo neočakávaných situácií v aplikácii.
- Vytváranie vlastných výnimiek pre špecifické chyby.
- Prenos informácií o chybe na volajúci kód pre správne spracovanie.