Co się stanie, jeśli wystąpi wyjątek w bloku Catch w C #. Również w tym przypadku wynik wywołującego

Było to pytanie wywiadu, dość proste, ale nie jestem pewny odpowiedzi.

Co się stanie, jeśli wystąpi wyjątek w bloku catch?

Próbuję podać przykładowy mały postęp tego, o co pytający pytał mnie, proszę poprawić mój program, jeśli się nie kompiluje, jestem naprawdę nowy. Dolna linia jest tym, co dzieje się, gdy wystąpi wyjątek w Catch i jaka będzie wartość w przypadku hatchera.

Na przykład mam następujące:

double Calculate(int x)
{
    try
    {
        x = x/2;
    }
    catch(Exception ex)
    {
        Console.Writeline("Message: "+ ex.Message);
    }
    finally
    {
      x = 10;
    }
    return x;
}

double myResult = Calculate(x); //x can be any number or 0 for example

Teraz są dwa pytania:

Co się stanie, jeśli w bloku catch wystąpi wyjątek? Ponadto, jak go rozwiązać? (To prosty przykład tego, co ankieter zadawał podobne pytanie).

Co stanie się z myResult, jeśli wyjątek wystąpi w metodzie Calculate (x) i jaka będzie jej wartość we wszystkich przypadkach? (Proszę wyjaśnić każdy przypadek za pomocą przykładu)

Chciałbym to zrozumieć również ze szczegółowym wyjaśnieniem.

Dziękuję bardzo.

questionAnswers(6)

yourAnswerToTheQuestion