정보처리기사 실기JavaJava 예외 처리난이도 2MCQ

정보처리기사 실기 Java 예외 처리 기출문제 #3865

문제

다음 Java 코드의 출력 결과로 가장 적절한 것은?

Java
public class Main { public static void main(String[] args) { int a = 5, b = 0; try { System.out.print(a / b); } catch (ArithmeticException e) { System.out.print("출력1"); } catch (ArrayIndexOutOfBoundsException e) { System.out.print("출력2"); } catch (NumberFormatException e) { System.out.print("출력3"); } catch (Exception e) { System.out.print("출력4"); } finally { System.out.print("출력5"); } } }

① 출력1출력5 ② 출력2출력5 ③ 출력4출력5 ④ 출력5

정답

1

해설

정답: 1. 5를 0으로 나누면 ArithmeticException이 발생하여 첫 번째 catch가 실행되고, finally 블록도 실행된다.

오답 풀이

  • 1번: ArithmeticException 처리 후 finally가 실행되므로 정답이다.
  • 2번: 배열 인덱스 예외가 발생하지 않는다.
  • 3번: ArithmeticException이 먼저 매칭되므로 Exception catch까지 가지 않는다.
  • 4번: catch 블록 출력이 누락되었다.

보충 개념 Java에서 finally 블록은 예외 발생 여부와 관계없이 일반적으로 실행된다. 여러 catch가 있을 때는 위에서부터 타입이 맞는 catch가 실행된다.

정보처리기사 실기 시험 준비 가이드

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[정보처리기사 실기] Java 예외 처리 Java 기출 #3865 | 문어CBT