티스토리 뷰

[java28강] 예외(Exception) 종류 및 발생원인



자바에는 예외(Exception) 라는것이 있습니다.

열심히 코딩을 한다음 실행을 하면 똭!!!! 하고 Exception 이 발생하며 실행이 안될때가 종종있습니다..

정말 열심히 코딩을 하고 실행을 하면 실행이 안될때... 정말 힘이빠지죠...


하지만 Exception 은 오히려 도움을 주는것입니다....

미리 오류를 찾아서 알려주는 것입니다..

만약 오류를 미리 발생시켜 주지 않으면 어떻게 될까요?

실행도중에 오류가 발생하면... 오류없이 찾으실려면? 엄청난 시간과 고생이 들어가게 됩니다..


그럼 Exception 종류에 대해서 알아보겠습니다.

Exception 종류들은 엄청나게 많이 있습니다.. 

너무 많이 있어 제가 작성하는것보다는 자바 API 문서(API 문서란? 자바에 대한 모든정보를 알려주는 문서입니다)를 

보시는게 빠르기에 링크를 걸어둡니다...


(java7 Exception api 링크 --> https://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html)


하지만! 저렇게나 많은 Exception 을 외워야 할까요?

다행이도 아닙니다... 

Exception 은 크게 2종류로 나눠볼수가 있습니다.

여러종류의 Exception (RuntimeException 을 제외한 Exception) , RuntimeException 이렇게 볼수가 있습니다.


1. 여러종류의 Exception

여러종류의 Exception 은 (RuntimeException 을 제외한 Exception) 컴파일시 발생하는 예외입니다. 말그대로 실행했을때 오류가 나오는것 입니다.

 즉 컴파일이 완료되서 실행이되기전에 오류가있으면 실행을 안시켜주는것 입니다. 

예를들어 파일을 불러다가 수정하는 프로그램이라고 생각해봅시다. 근대 없는 파일을 불러서 실행된다면..

당연히 실행이 되면 안되겠죠? ㅎ 이런 오류들을 미리 알려주는것입니다.

 

2. RuntimeException

RuntimeException 은 실행 도중에 발생할수도 있고 안할수도 있는 예외입니다.

즉 실행도중에 한번도 실행이 안될수도 있고.. 조껀에따라 오류가 안날수도 있다는 것입니다.

예를들어 입력받은 값을 숫자로 형변환 하는 메소드를 만들었는대..숫자를 넣으면 당연히 잘될탠대.. 문자를 넣어버린다면?? 오류가 나오겠죠..

이럴 때 나오는 오류가 RuntimeException 입니다.


그럼 코딩을 할때 어떤오류가 더 화가나고 찾기 어려울까요? 

바로 RuntimeException 입니다..

오류가 날수도 있고.. 안날수도 있기때문이죠.......


그럼 사전에 예방을 할수는 없을까요?

다행이도 예방을 할수 있습니다. 바로 try~ catch 로 예방을 할수있습니다.

다음 29강에서는 try catch finally 에 대해 자세히 알아보겠습니다 ㅎㅎ

  

이상으로 이번 28강에서는 예외(Exception) 의 종류 및 발생원인 등에 대해서 알아보았습니다. 모두 수고하세요!^^


댓글