Exception 맛보기

오늘도 알고보자·2022년 2월 10일
0

Exception (예외처리)

  • 사람이 살다보면 생각한대로 살아지지 않을때가 있다.
  • 인생은 그렇지만 프로그램은 생각한대로 살도록 앞에 놓인 가시밭길들을 빗겨나가는 방법을 정해줄 수 있다. (그래도 인생이 좀 더 재밌긴 하다.)
  • 프로그램을 만들다 보면 수 없이 많은 에러가 난다, 이러한 에러를 무시하기도 하며, 적절한 처리를 해줄 수 있다.

Exception Class

  • Exception은 사용자에게 실패에 대한 정보를 전달하기 위한것이다.
  • Exception ('메세지') 로 직접 Exception 인스턴스를 생성

  • 사용자에게 정확한 정보를 제공하지 않기에 테스트 또는 개발중일때만 사용하라고 써있다.

try 와 Catch

  • try는 예외가 생길 가능성의 코드를 작성 한다.

  • catch는 try에 기재한 가능성의 코드를 처러하는 코드를 작성한다.

  • dart에서는 try-on 과 try- catch를 쓰는것같다.

  • Try - on 예외클래스의 타입을 지정해야 하는 경우

try{
    // 예외 발생할 수 도 있는 코드
    // code that might throw an exception
}on 예외클래스{
    // 예외처리를 위한 코드
    // code for handling exception 
}
  • Try - catch 객체가 필요할 때 사용
try{
   // 예외 발생할 수 도 있는 코드
   // code that might throw an exception
}catch(e){
   // 예외처리를 위한 코드
   // code for handling exception 
}

-예외가 try 블럭에서 발생한 경우

  1. 예외가 일치하는 catch 문이 있는지 확인
  2. 일치하는 catch문이 있다면 catch 블럭내의 문장을 모두 실행하고 try 캐치문을 빠져나가서 다음 문장을 수행
  3. 일치하는 catch문이 없다면 예외 처리를 못하고 에러 발생

-예외가 try 블럭안에서 발생하지 않은 경우

  1. cacth 블럭을 거치지 않고 바로 빠져나가서 수행을 계속한다.

throw

  • 예외를 임의로 발생시킨다(억지로 만들어준다). → 사용자가 원하는 로직상의 예외처리를 해주기 위해서이다.
  • 예외를 발생시키기 위해서는 던질 예외의 객체가 필요하다.

0개의 댓글