본문 바로가기

JAVA BASE/Exception(예외)4

04. [자바] 예외(만들기, 되던지기, 연결) 사용자지정의 예외 만들기 필요에 따라 새로운 예외 클래스를 정의하여 사용할 수 있고 보통 Exception클래스 또는 RuntimeException클래스로부터 상속받아 클래스를 만게 되고 필요에 따라서 알맞은 예외 클래스를 선택할 수 있다. class customException extends Exception { customException(String msg) { // 문자열을 매개변수로 받는 생성자 super(msg); // 조상인 Exception클래스의 생성자를 호출한다. } } 기존에는 Exception을 상속받아서 'checked예외'로 작성하는 경우가 많았지만 요즘은 RuntimeException을 상속받아 예외처리를 선택적으로 할 수 있게 작성하는 쪽으로 변해가고 있다. c.. 2020. 12. 22.
03. [자바] -try-with-resources문 -try-with-resources문? try-catch문의 변형 이고 입출력(I/O)과 관련된 클래스를 사용할 때 유용하다. 꼭 close를 해주어야 하는 클래스들이 있는데 -try-with resources문을 사용하면 따로 close를 호출하지 않아도 try블럭을 벗어날때 자동으로 close가 호출된다. try-catch-finally 코드를 보자 try { FileInputStream fis = new FileInputStream("score.dat"); DataInputStream dis = new DataInputStream(fis); } catch (IOException ie) { ie.printStackTrace(); } finally { //finally에 close를 넣어주었고 clos.. 2020. 12. 22.
02. [자바] 예외처리 예외처리? 프로그램의 실행중 발생하는 에러는 어쩔 수 없지만, 예외는 프로그래머가 이에 대한 처리를 미리 해주어야 한다. 예외처리(exception handling)는 프로그램 실행 중 발생할 예외에 대비한 코드를 작성하여 예외의 발생으로 인한 프로그램의 갑작스런 비정상 종료를 막고, 정상적인 실행상태를 유지 하는 것이다. 예외처리(exception handling)의 정의 - 프로그램 실행 시 발생할 수 있는 예외에 대비한 코드를 작성하는 것 목적 - 프로그램의 비정상 종료를 막고, 정상적인 실행상태를 유지 하는것 발생한 예외를 처리하지 못하면 프로그램은 비정상 종료되고, 처리되지 못한 예외(uncaught exception)는 JVM의 '예외처리기(UncaughtExceptionHandler)'가 예.. 2020. 12. 20.
01. [자바] 프로그램 오류, Exception 클래스의 계층구조 프로그램 오류 프로그램이 어떤 원인으로 인해 오작동, 비정상적으로 종료되는 경우가 있는데 이것을 프로그램 에러 또는 에러라고 한다. 이런 에러를 발생시점에 따라 '컴파일 에러', '런타임 에러', '논리적 에러'로 나눌 수 있다. 컴파일 에러 : 컴파일 시에 발생하는 에러 런타임 에러 : 실행 시에 발생하는 에러 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 것 자바에서는 발생할 수 있는 프로그램 오류를 '에러(error)', '예외(Exception)' 두 가지로 구분 했다. 에러는 발생하면 복구할 수 없는 심각한 오류이고, 예외는 발생하더라도 수습이 가능한 덜 심각한 에러이다. 에러(error) : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외(exception) : 프로그램 코드.. 2020. 12. 20.