

-바이트 기반 Stream
-문자 기반 Stream



=====
-문자 기반 Stream

[파이프드]리드/라이트 => 쓰레드





[시리얼라이제이션]

지금까지 데이터 입/출력을 할때
사용되는 스트림과 객체를 바이트로 바꿔~
사용하는 방법에 대해 알아보다
========= ====================
**자바에서 런타임 시 발생할 수 있는 오류 2가지 있다.
⏺ 오류(Error)와 예외(Exception)
🎈프로그램의 에러는 크게 2가지
✔ 컴파일 에러
✔ 런타임 에러
✔ 논리적 에러
🎈Java에서의 런타임 에러
✔ 오류(Error): 로직 상에서 수습될 수 없는 심각한 오류
✔ 예외(Exception): 로직 상에서 수습될 수 있는 미약한 오류
**Exception 분류
-Exception[익셉션]클래스들은 사용자로부터 발생되는 예외
(checked Exception)
[체크드 익셉션]
Comeplie시점에 체크
DataFormatException, FileNotFoundException 등
**체크드리스트는 사용자로부터 발생하는 예외
============
[런타임익셉선]
-RuntimeException클래스들은 개발자의 실수로 발생되는 예외
(Unchecked Exception [언체크드 익셉션])
**언체크드 익셉션은 개발자의 실수로
잘못된 로직이나 처리 때문에 발생하는 예외이다.
complie[컴플리]시점에 체크할 수 없음
NullPointerException, ArithmeticException 등

-예외처리란? 프로그램 실행 시 발생할 수 있는
예외에 대비한 코드를 작성한 것을 말한다.
-예외처리를 하는 소스코드 구성을 살펴보자

finally 부분에 => ex) 파일과 관련된 입출력을 했으면..
파일을 닫아주는 처리를 해야한다.
이 처리를 파이너리 문에서 하면 된다.
그리고
try - catch - finally문 안에는 try - catch문이 중복적으로 작성될 수 있다.










-소스코드를 살펴보면..
-제일 위에 스캐너가 선언되어 있고,
컨티뉴와 섬 변수가 선언 및 초기화 되어있다.
continueInput이라는 불리언 변수는
10번 입력을 하는 동안.. 수가 입력되지 않으면..
do~while문을 빠져나가기 위한 불리언 값이다.
실제로 10번이 입력되지 않은 경우에는 결과값이 처리되지 않도록
로직을 작성했다. 실제로 실행을 해보면..
숫자값이 이력되지 않은 경우 다음과 같이 처리되는 것을 알 수 있다.
====두번째

-캐치문에서는..
파일을 열거나, 입출력 시 발생할 수 있는
예외를 처리할 수 있는 것으로 작성을 했다.
실행결과
텍스트라는 파일이 만들어지고,
내부에
This
is
java
true
123
이 만들어진다.