Goal - 직렬화에 대해 알아본다 - 직렬화 가능 여부를 명시하는 Serializable 인터페이스에 대해 알아본다 - 코드 예시를 통해 실습한다. 1. 직렬화 (Serialization) - 인스턴스의 상태를 그대로 저장하거나 네트윅으로 전송하고 이를 다시 복원 (Deserialization) 하는 방식 - ObjectInputStream과 ObjectOutputStream이라는 보조스트림을 사용 - 프레임워크에서 내부적으로 많이 쓰임 2. Serializable 인터페이스 - 직렬화는 인스턴스의 내용이 외부(파일, 네트워크)로 유출되는 것이므로 프로그래머가 객체의 직렬화 가능 여부를 명시함 - 구현 코드가 없는 mark interafce인 Serializable 인터페이스를 통해 직렬화 가능 여부를..
Goal - 입출력 스트림에 대해 알아본다 - 표준 입출력 스트림에 대해 알아본다 1. 입출력 스트림이란? - 네트워크에서 자료의 흐름이 물과 같다는 의미에서 유래 - 다양한 입출력 장치에 독립적으로 일관성 있는 입출력 방식 제공 - 입출력이 구현 되는 곳에서는 모두 I/O 스트림을 사용 : 키보드, 파일 디스크, 메모리 등 2. 입출력 스트림 구분 - I/O 대상 기준 : 입력 스트림, 출력 스트림 - 자료의 종류 : 바이트 스트림, 문자 스트림 - 스트림의 기능 : 기반 스트림, 보조 스트림 2-1. 입력 스트림과 출력 스트림. - 입력 스트림 : 대상으로 부터 자료를 읽어 들이는 스트림 - 출력 스트림 : 대상으로 자료를 출력하는 스트림 2-2. 바이트 단위 스트림과 문자 단위 스트림 - 바이트 단..
Goal - 오류와 예외 클래스에 대해 알아본다 - 예외 처리의 다양한 방식에 대해 알아본다 1. 오류란 무엇인가? - 컴파일 오류 : 프로그램 코드 작성 중 발생하는 문법적 오류 - 실행 오류 : 실행 중인 프로그램이 의도 하지 않은 동작을 하거나(bug) 프로그램이 중지 되는 오류 (runtime error) - 자바는 예외 처리를 통해여 프로그램의 비정상 종료를 막고 log를 남길 수 있음 2. 오류와 예외 클래스 - 시스템 오류 (error) : 가상 머신에서 발생, 프로그래머가 처리 할 수 없음. ex) 동적 메모리를 다 사용한 경우, stack over flow 등 - 예외 (Exception) : 프로그램에서 제어할 수 있는 오류. 읽으려는 파일이 없는 경우, 네트웍이나 소켓 연결 오류 등...
Goal - 스트림의 개념 및 사용이유에 대해 알아본다 - 스트림 연산에 대해 알아본다 - 스트림의 예제 코드를 학습한다 - reduce() 연산에 대해 알아본다 1. 스트림의 개념 및 사용이유 - 자료의 연산을 위해 사용하는 스트림으로 함수형 프로그램을 지원하기 위한 클래스임 (IO에서 사용하는 스트림은 입출력을 위한 스트림, 같은 용어이나 다른 의미) - 자료의 대상과 관계없이 동일한 연산을 수행할 수 있는 기능(자료의 추상화)이 있기 때문에 배열, 컬렉션등에 동일한 연산이 수행되어 일관성 있는 처리가 가능함. - 한번 생성하고 사용한 스트림은 재사용할 수 없음 (다른 새로운 메모리에서 연산이 진행되기 때문에) 추가적인 접근을 위해서는 스트림을 새로 생성해 접근해야 함 - 스트림 연산은 기존 자료를 ..
- 20200317
- 20200510
- chapter8
- 20200502
- 20201204
- 20200503
- 20200319
- 20200429
- 20200403
- 20200428
- 20200420
- 20200425
- 백준
- 20200421
- 20200406
- 20200427
- likelion
- 20200423
- chapter7
- 20200804
- 20200624
- 20200622
- 20200330
- 20200417
- 20200424
- 20200415
- 20200413
- 생활코딩리눅스
- 20200512
- 20200504
- Total
- Today
- Yesterday