프로그램을 실행 중 어떤 원인에 의해서 오작동을 하거나 비정상적으로 종료되는 경우가 있다.
이러한 결과를 초래하는 원인을 프로그램 에러 또는 오류라고 한다. 크게 3가지 경우로 나뉜다.
컴파일 에러 → 컴파일 시에 발생하는 에러
런타임 에러 → 실행 시에 발생하는 에러
논리적 에러 → 실행은 되지만, 의도와 다르게 동작하는 것
이 중 런타임 에러 방지하기 위해서는 프로그램의 실행 도중 발생할 수 있는 모든 경우의 수를 고려하여 대비하였는데,
자바에서는 실행 시 발생할 수 있는 프로그램 오류를 '에러(error)'와 '예외(exception)' 두 가지로 나누었다.
예외 처리 방식은 크게 3가지로 나눌 수 있다. 차이점은 추후에 조사해보자.
▶ throws(전가), try-catch(처리), throw(예외발생)
(예제1)
JAVA에서 입력 함수로 사용되는 System.in.read(); 사용하면,
앞서 말했던 프로그램 오류로 의문의 에러가 뜨면서 해결방법 두가지가 제시된다.
① throws(전가)를 선언해라
② try-catch(처리) 사용해

이때 ①'Add throws declaration' 클릭하여 해당 프로그램 오류를 예외 전가 처리해버리면 된다.
그러면 main 함수에 자동으로 'throws IOException'이 추가되고 import 선택하라고 뜬다.
'IOExection - java.io' 클릭하여 import를 추가하면 해당 오류가 해결된다.