예외
-
예외에서 finally 블럭백엔드/자바 2020. 8. 11. 05:13
finally 블럭 finally 블럭은 예외의 발생 여부 상관없이 실행해야할 코드를 넣는 목적으로 쓴다. try-catch문의 끝에 선택적으로 붙여 사용할 수 있다. finally 블럭 사용법 catch 블럭 끝나는 지점에 'finally'에 대괄호 '{ }'를 붙이고 대괄호 안에 실행할 문장을 넣어준다. try { 실행문; } catch ( 예외) { 대체 실행문; } finally { finally 실행문; } public static void main(String[] args) { try { // try 블럭 System.out.println("예외 finally 테스트입니다."); } catch (Exception a) { // catch 블럭 System.out.println("예외 final..
-
예외 선언하기백엔드/자바 2020. 8. 11. 04:30
예외 선언하기 메서드에 예외를 선언하는 경우가 있다. 이런 경우는 이 예외를 처리하려는 것이 아니라 이 메서드를 호출할 경우 예외에 조심하라는 뜻이다. 즉 이 메서드를 호출하려면 선언된 예외를 처리할 수 있는 try - catch 문을 작성하라는 것이다. 예외 선언하는 법 일반 메서드를 작성할 때 파라미터 뒤에 'throws'를 붙이고 예외 처리해줄 예외들을 적어준다. 각 예외들은 쉼표를 기준으로 여러개를 적어줄 수 있다. 접근제어자 + 반환값 + 메서드명 ( ) throws Exception1, Exception2, Exception3....{ }; 예외 선언한 메서드 사용법 예외를 선언한 메서드를 만드는 이유는 해당 메서드 호출시 예외를 신경써서 처리하라는 뜻이다. 즉 이거 호출하려면 try - ca..
-
예외 일으키기백엔드/자바 2020. 8. 11. 03:21
예외 일으키기 예외를 처리해서 문제없이 넘어가는 try - catch 방식도 있다. 하지만 반대로 예외를 일부러 일으킬 수도 있다. Exception + 참조변수명 = new Exeption( String 삽입 가능); throw 참조변수명; public static void main(String[] args) { try { Exception A = new Exception("예외를 고의로 발생시킵니다."); throw A; } catch (Exception a) { System.out.println(a.getMessage()); a.printStackTrace(); } } 고의로 예외를 발생시킬 때 주의할 점은 이 고의로 만든 예외조차 try-catch 문에 넣어줘야 한다는 것이다. try-catch ..
-
예외 처리하기 try - catch 문백엔드/자바 2020. 8. 11. 02:58
예외 처리하는 이유 예외는 프로그래머가 처리해서 비정상적 종료를 막고 정상적인 실행상태 유지를 위해 꼭 필요하다. try - catch 문의 구조는 다음과 같다. try를 쓰고 대괄호 안에 예외가 일어날 수 있는 문장을 삽입한다. catch에는 예외가 발생하면 대신 처리할 문장을 입력하면 된다. try는 한번이지만, catch는 여러번 중첩해서도 사용이 가능하다. try { 예외가 발생할 수 있는 문장 삽입 } catch ( 일어날 수 있는 예상되는 예외 + 참조변수) { 괄호 안의 예외가 발생하면 대신 이를 처리할 문장 입력 } public static void main(String[] args) try { // try + { 예외가 날 수 있는 문장 대괄호 안에 입력 } int result; for(..
-
오류와 예외(Error, exception)백엔드/자바 2020. 8. 11. 01:54
오류 프로그램을 실행하면서 어떤 원인에 의해 오작동 또는 비정상적으로 종료되는 경우 이를 에러(오류)라고 부른다. 이러한 에러는 크게 3가지로 나뉜다. ◎ 컴파일 에러: 컴파일 시에 발생하는 에러 ◎ 런타임 에러: 컴파일 단계는 통과했으나 실행시 발생하는 에러 ◎ 논리적 에러: 실행은 되지만, 의도와 다르게 작동하는 것 자바는 이러한 비정상적인 작동, 오작동을 에러(Error)과 예외(Exception)으로 구분했다. 에러(Error)와 예외(Exception)의 차이점 ◎ 에러는 프로그램 코드에 의해 수습될 수 없는 심각한 오류 ex) 스택 오버플로우, 메모리 부족 등 ◎ 예외는 발생하더라도 수습이 가능한 에러보다 낮은 단계의 오류를 말함 ◎ 에러는 발생시 비정상적인 종료를 막을 수 없지만, 예외는 적..