hsunny study blog

예외처리, 입출력 스트림 본문

programming

예외처리, 입출력 스트림

헤써니 2016. 5. 6. 20:23

에러는

구문에러와 

런타임 에러로 나뉘어진다


구문에러

- 문법을 잘못 작성하여 발생. 컴파일시 발견됨

- 지적된 부분을 수정하고 다시 컴파일하면 됨


런타임 에러

- 프로그램 실행 중에 발생되는 에러

- 논리에러, 시스템에러, 예외 와 같이 3가지가 있다

-- 논리에러 : 프로그래머의 논리적 오류에 의해 발생. 컴파일은 되나 실행시 에러

-- 시스템에러 : 시스템 자체의 문제에 의해 발생. 프로그래머가 처리하기 어려움. 동작중에 운영체제나 하드웨어에 문제가 발생한거야

-- 예외 : 정상적인 프로그램 실행 중에 외부의 요인에 의하여 발생되는 에러. 파일 읽기/쓰기 오류, 네트워크 전송 오류


정상적인 실행중에 외부 요인에 의해 발생되는 에러가 예외!

예외도 에러에 속한다

그러므로 프로그래머가 예외를 처리할 수 있어야한다


예외처리는 Exeption클래스를 이용한다.

- 프로그램 실행 중 예외가 발생되면 자바가상머신은 예외를 나타내는 Exception 클래스의 객체를 생성하여 프로그램으로 넘기게 된다.

- 예외를 발생시킨 프로그램이 예외객체를 catch하여 처리하게 된다.

- 예외처리를 하지 않은 상태에서 예외가 발생되면 프로그램이 중지된다.


Exeption클래스는 계층 존재. 예외별로


try

{

 예외발생 가능성이 있는 구문

}

catch(예외클래스 e)

{

 예외 처리 구문

}

finally

{

 예외와 관련 없이 반드시 처리해야 할 구문(생략가능)

}

예외가 발생하면

그 내용을 기초로 디버깅하자! 

하나하나 외우는 뻘짓하지말궁 ^^!


스트림

- 데이터의 연속적인 흐름으로써 입력스트림과 출력 스트림으로 구분


입력 스트림 클래스

InputStream 데이터를 바이트단위로 처리

Reader 데이터를 문자단위로 처리 ->문자단위로 처리해야할 필요가 있을 때 내부적으로 알아서 인코딩하므로 편리


출력 스트림 클래스도 2개로 나뉨

OutputStream 계얼은 데이터를 바이트 단위로 처리

Writer 계열은 데이터를 문자열 단위로 처리


eclilpse에서 arg0 요고 입력받고 싶으면

Run Configuration > Argument > Program Argument 에 입력하기

'programming' 카테고리의 다른 글

[프로그래밍]좋은 블로그들  (0) 2016.05.20
JAVA 안드로이드 프로그래밍  (0) 2016.05.10
JAVA 네트워크 프로그래밍  (0) 2016.05.10
애플릿 구조 및 프로그래밍  (0) 2016.05.06
멀티스레드 제어와 메서드  (0) 2016.05.06