본문 바로가기
728x90

Exception2

Item 72. 표준 예외를 사용하라. 표준 예외를 재사용하는 것으로 얻을 수 있는 이점은 다음과 같다. 1. 표준 예외는 많은 프로그래머에게 익숙한 규약을 따른다. 따라서 내가 작성한 API를 다른 사람이 익히고 사용하기 쉬워진다. 2. 예외 클래스 수가 적으면 메모리 사용량이 줄고 클래스를 적재하는 시간도 적게 걸린다. 많이 사용되는 예외들은 다음과 같다. 예외 사용처 IllegalArgumentException 허용하지 않는 값이 인수로 건네졌을 때(null은 따로 NullPointerException 으로 처리) IllegalStateException 객체가 메서드를 수행하기에 적절하지 않은 상태일 때 NullPointerExcetpion null을 허용하지 않는 메서드에 null을 건넸을 때 IndexOutOfBoundsExcepti.. 2022. 4. 17.
Item 69. 예외는 진짜 예외 상황에만 사용하라 코드 부터 보자. 1 2 3 4 5 6 7 8 9 try { int i = 0; while (true) { range[i++].climb(); } } catch (ArrayIndexOutOfBoundsException e) { } Colored by Color Scripter cs 이 코드는 배열의 끝에 도달하면 에러를 던져 코드를 종료한다. for-each loop 를 사용하지 않고 이처럼 작성한 이유는 다음과 같다. JVM은 배열에 접근할 때마다 경계를 넘었는지를 검사한다. 반복문 또한 배결 경계에 도달하면 종료한다. 따라서 반복문을 사용하면 경계 검사가 중복되므로 하나를 생량한 것이다. 하지만 이는 다음과 같은 이유로 잘못된 추론이다. 1. 예외는 예외 상황에서만 사용할 목적으로 설계되었으므로 JV.. 2022. 4. 17.
728x90