STUDY91 예외처리4 Throwable+ Error+ Exception+ IOException+ RuntimeException+ ArithmeticException.... Throwable - 예외 클래스들의 공통된 조상. - 모든 클래스들이 가지고 있는 공통된 메소드를 정의. - 직접 사용하지는 않기에 때문에 중요하지 않음. Error - 소스문제가 아니라 애플리케이션이 동작하는 가상머신에 문제가 생겼을 때 발생하는 에러. - 예) 메모리가 부족한 경우 Exception - IOException, RuntimeException 등이 있다. - RuntimeException를 제외한 Exception 클래스의 하위 클래스 : checked 예외 - RuntimeException의 하위클래스 : unchecked 예외 - ch.. 2018. 1. 22. 예외처리3 예제 예외처리에 대해 예제를 살펴보자. 계산기 소스public class CalculatorExceptionClass { int left, right; public void setOprands(int left, int right){ this.left = left; this.right = right; } public void divide(){ if(this.right == 0){ throw new ArithmeticException("0으로 나누는 것은 허용되지 않습니다."); } try { System.out.print("계산결과는 "); System.out.print(this.left/this.right); System.out.print(" 입니다."); } catch(Exception e){ System... 2018. 1. 22. 예외처리2 throw, throws 예제를 보자. 현재 소스class B{ void run(){ BufferedReader bReader = null; String input = null; try { bReader = new BufferedReader(new FileReader("out.txt")); } catch (FileNotFoundException e) { e.printStackTrace(); } try{ input = bReader.readLine(); } catch (IOException e){ e.printStackTrace(); } System.out.println(input); }}class C{ void run(){ B b = new B(); b.run(); }}public class ThrowE.. 2018. 1. 22. finally finally - 예외여부와 관련없이 실행되는 로직. - try / catch 실행결과와 무관하게 무조건 실행. - 어던 작업의 경우에 예외와는 무관하게 반드시 끝내야하는 작업이 있을 때 사용. try { System.out.println(arr[first] / arr[second]);} catch(ArrayIndexOutOfBoundsException e){ System.out.println("ArrayIndexOutOfBoundsException");} catch(ArithmeticException e){ System.out.println("ArithmeticException");} catch(Exception e){ System.out.println("Exception");} finally { Sy.. 2018. 1. 22. 이전 1 ··· 10 11 12 13 14 15 16 ··· 23 다음