C# 한방에 배우기 개인정리노트 6#
예외처리
try에서 발생한 에러를 다음 catch에서 받아 메세지를 표시하거나
또 다른 에러를 감지하여 다음으로 넘길 수 있다.
try
{
Console.Write("Divide 10 by");
int num = int.Parse(Console.ReadLine()); //Parse = 문자열을 숫자로 변환
//double num2 = double.Parse("123.123");
Console.WriteLine("10 / {0} = {1}", num, (10 / num));
}
catch(DivideByZeroException ex) // 0으로 나누려고 하는 예외
{
Console.WriteLine("Can`t Divide by Zero");//개발자가 지정한 에러 메세지
Console.WriteLine(ex.GetType().Name); //발동된 예외의 이름 출력
Console.WriteLine(ex.Message); // 예외를 설명하는 에러 메세지
throw ex; // 또 다른 catch 블록이 메세지를 받아 처리 하게 한다.
}
catch(Exception ex) //모든 예외를 잡을 수 있는 기본 예외
{
Console.WriteLine(ex.GetType().Name); //발동된 예외의 이름 출력
Console.WriteLine(ex.Message); // 예외를 설명하는 에러 메세지
throw new InvalidOperationException("Operation Failed",ex); //예외를 잡았고, 또 다른 예외를 넘길때
}
댓글 없음:
댓글 쓰기