2017년 5월 25일 목요일

C# 한방에 배우기 개인정리노트 6# 예외처리

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); //예외를 잡았고,                 또 다른 예외를 넘길때
            }

댓글 없음:

댓글 쓰기