Sobes.tech
Junior

Mis on throw operaator C#-s?

sobes.tech AI

Vastus AI-lt

Operator throw kasutatakse selgelt erandite käivitamiseks. See võimaldab katkestada programmi normaalne täitmine ja anda juhtimine erandite töötlemise plokile.

// Näide, kuidas kasutada throw operaatorit
try
{
    int[] numbrid = { 1, 2, 3 };
    int indeks = 5;

    // Erandite IndexOutOfRangeException käivitamine käsitsi
    if (indeks >= numbrid.Length)
    {
        throw new IndexOutOfRangeException("Indeks on massiivi piiridest väljas.");
    }

    Console.WriteLine(numbrid[indeks]);
}
catch (IndexOutOfRangeException ex)
{
    // Erandi töötlemine
    Console.WriteLine($"Viga: {ex.Message}");
}

throw operaatorit saab kasutada kahes vormis:

  1. throw väljend;: Käivitab uue erandi, kus väljend on System.Exception klassi eksemplar.

    throw new ArgumentException("Kehtetu argument.");
    
  2. throw;: Taas käivitab praeguse erandi catch plokis. See säilitab algse erandi kutsesilti täieliku teabe.

    try
    {
        // Kood, mis võib erandi põhjustada
    }
    catch (FileNotFoundException ex)
    {
        // Täiendav töötlemine või logimine
        Console.WriteLine($"Faili ei leitud: {ex.FileName}");
    
        // Erandi uuesti käivitamine edasiseks töötlemiseks kõrgemal tasemel
        throw;
    }
    

throw kasutamine on oluline, et:

  • Näidata vigu või ootamatuid olukordi rakenduses.
  • Luua oma erandeid spetsiifiliste vigade jaoks.
  • Edastada teavet vea kohta kutsuvale koodile õige töötlemise jaoks.