C#에서 throw는 키워드이며 프로그램 실행 중에 수동으로 예외를 throw하는 것이 유용하며 요구 사항에 따라 try-catch 블록을 사용하여 throw된 예외를 처리할 수 있습니다.
catch 블록에서 throw 키워드를 사용하여 catch 블록에서 처리되는 예외를 다시 throw할 수 있습니다. 예외를 다시 throw하는 것은 호출자가 원하는 방식으로 예외를 처리하도록 예외를 전달하려는 경우에 유용합니다.
다음은 C#에서 try-catch 블록과 함께 throw 키워드를 사용하여 호출자에게 예외를 다시 throw하는 예입니다.
예시
class Program{ static void Main(string[] args){ try{ Method2(); } catch (System.Exception ex){ System.Console.WriteLine($"{ex.StackTrace.ToString()} {ex.Message}"); } Console.ReadLine(); } static void Method2(){ try{ Method1(); } catch (System.Exception){ throw; } } static void Method1(){ try{ throw new NullReferenceException("Null Exception error"); } catch (System.Exception){ throw; } } }
이것이 요구 사항에 따라 catch 블록에서 throw 키워드를 사용하여 호출자에게 예외를 다시 throw하는 방법입니다.
출력
at DemoApplication.Program.Method1() in C:\Users\Koushik\Desktop\Questions\ConsoleApp\Program.cs:line 49 at DemoApplication.Program.Method2() in C:\Users\Koushik\Desktop\Questions\ConsoleApp\Program.cs:line 37 at DemoApplication.Program.Main(String[] args) in C:\Users\Koushik\Desktop\Questions\ConsoleApp\Program.cs:line 24 Null Exception error