본문 바로가기
.NET

C# Throw 발생 방법

by leo21c 2025. 5. 13.

C#에서 throw 키워드는 예외(Exception)를 발생시키는 데 사용됩니다. 특정 조건이 만족되지 않을 경우 예외를 던져 프로그램이 예외 처리 로직을 수행하도록 할 수 있습니다.

1. 기본적인 throw 사용 방법

throw new Exception("에러가 발생했습니다!");

 

2. 조건부 예외 발생
특정 조건을 검사하고, 필요할 때만 예외를 발생시키는 방법입니다.

void ValidateAge(int age)
{
    if (age < 0)
    {
        throw new ArgumentException("나이는 음수가 될 수 없습니다!");
    }
    Console.WriteLine($"입력된 나이: {age}");
}

// 사용 예
ValidateAge(-5); // 예외 발생!

📌 throw new ArgumentException("메시지")를 사용하여 잘못된 인수에 대한 예외를 던질 수 있습니다.

 

3. 사용자 정의 예외 클래스
C#에서는 표준 예외 유형 외에도 사용자 정의 예외를 만들 수 있습니다.

public class CustomException : Exception
{
    public CustomException(string message) : base(message) { }
}

// 사용자 정의 예외 발생
throw new CustomException("사용자 정의 예외 발생!");

📌 Exception 클래스를 상속받아 새로운 예외 유형을 정의할 수 있습니다.

 

4. 예외 다시 던지기 (throw vs. throw ex)
예외를 다시 던질 때는 throw;를 사용하는 것이 좋습니다.

try
{
    throw new InvalidOperationException("잘못된 작업!");
}
catch (Exception ex)
{
    Console.WriteLine($"예외 발생: {ex.Message}");
    throw; // 원래 예외 유지
}

🚀 throw;를 사용하면 예외의 원래 스택 정보를 유지하면서 다시 던질 수 있습니다. 반면 throw ex;를 사용하면 예외가 새로 생성된 것으로 간주되어 스택 정보가 변경될 수 있습니다.

✨ 결론
- throw new Exception("메시지")를 사용하여 예외를 발생 가능
- throw;를 이용해 기존 예외를 다시 던질 수 있음
- 사용자 정의 예외를 만들어 특정 예외 상황을 처리 가능

LIST