본문 바로가기

공부 자료/자바[JAVA]

[Java] 예외처리 try~catch~finally

try~catch

try{
// 일반적인 코드 입력
// 만약 실행 중 try 문에서 에러가 발생할 경우 catch 문으로 이동하며, 문제가 없을 경우 try문을 실행
	throw new Exception(); //try 문에서 강제 예외 처리를 하고 싶을 경우 해당 코드를 통해 Exception을 강제할 수 있음
} catch (Exception e){
//try문에서 오류가 날 경우 catch문을 실행하며, try에서 에러가 없다면 실행하지 않음
}

: 예외 처리의 경우 기본적으로 try~catch문을 사용함

: try문에서 throw new Exception()을 사용하여 강제로 Exception 발생이 가능

 

 

try~catch~finally

try{
// 일반적인 코드 입력
// 만약 실행 중 try 문에서 에러가 발생할 경우 catch 문으로 이동하며, 문제가 없을 경우 try문을 실행
	throw new Exception(); //try 문에서 강제 예외 처리를 하고 싶을 경우 해당 코드를 통해 Exception을 강제할 수 있음
} catch (Exception e){
//try문에서 오류가 날 경우 catch문을 실행하며, try에서 에러가 없다면 실행하지 않음
} finally{
//finally의 경우 항상 출력됨 (try에서 에러 발생 후 catch문 실행, 그 이후 finally문 실행)
}

: try~catch문에서 finally문만 추가된 것으로 앞의 try문에서 일어난 일에 관계없이 항상 실행이 보장

: catch나 finally 블록은 생략이 가능하지만 둘 다 생략은 불가능하며 try문은 둘 중 하나 이상의 블록과 함께 사용되어야 함

try{
// 일반적인 코드 입력
// 만약 실행 중 try 문에서 에러가 발생할 경우 catch 문으로 이동하며, 문제가 없을 경우 try문을 실행
	throw new Exception(); //try 문에서 강제 예외 처리를 하고 싶을 경우 해당 코드를 통해 Exception을 강제할 수 있음
} finally{
}

//catch문 생략 가능

(사용 불가)
try{
// 일반적인 코드 입력
// 만약 실행 중 try 문에서 에러가 발생할 경우 catch 문으로 이동하며, 문제가 없을 경우 try문을 실행
	throw new Exception(); //try 문에서 강제 예외 처리를 하고 싶을 경우 해당 코드를 통해 Exception을 강제할 수 있음
}

//둘 다 생략은 불가능함