목록[Java]/Java Concepts (5)
Everything has an expiration date
/* ======================================== ■■■ 자바의 기본 입출력(I/O) ■■■ ==========================================*/ /* 자바는 단일 입출력이다 물 줄기처럼 한 방향으로 흐른다.(단방향) 아래의 그림처럼 먼저 들어왔던 것이 먼저 나간다. → First input First Output in→ ----------- -- | | | | --- → | --- out --------- 스트림 위에 무언가를 띄워서 보낸다... 바깥으로 무언가를 내보내지 못하면(데이터) 안 된다. 먼저 띄워보낸 종이배(데이터)가 나가야만 (blocking) 그 다음에 띄워보낸 종이배가 나갈 수 있다. 문자 input output 바이트 input..
○ Vector(벡터) 자바의 자료구조 기능을 제공하는 클래스들 중 가장 기본적인 클래스로 배열과 비슷하지만, 배열과 달리 다른 종류의 데이터 형을 가진 데이터 요소들을 가질 수 있으며, 데이터가 가득 차면 자동으로 저장 영역을 확장시키게 된다. 또한, 객체 레퍼런스를 저장하기 때문에 JDK 1.5 이전에는 자바 기본형 데이터는 저장할 수 없었으나 JDK 1.5 이후부터는 오토박싱 / 오토 언박싱 기능이 지원되면서 기본 데이터형도 저장할 수 있게 되었다. 벡터 클래스의 기본 구조는 시퀀스(Sequence) 데이터 구조에 기반하며 시퀀스 데이터 접근을 순차적인 인덱스 값에 대한 위치로 접근하게 된다. 따라서 자료구조의 양 끝단에서만 접근이 가능한 큐나 한쪽 끝에서만 접근이 가능한 스택과 달리 시퀀스 개념의..
[Queue] : ① 방향이 항상 한쪽으로... → ◎을 꺼내고, ●을 꺼내야만 ○을 꺼낼 수 있다. ② 먼저 집어 넣은 것이 먼저 나온다. · First Input First Output → [FIFO] ---------- in → ○●◎ → out ---------- ○ 큐(Queue) (- 인터페이스 이다.) 큐(Queue)는 선입선출의 FIFO(First Input, First Output) 구조로 먼저 입력된 자료를 먼저 출력하며 Queue 인터페이스를 구현한 클래스는 큐와 관련한 다양한 기능을 제공한다. ※ Queue 인터페이스 인스턴스를 생성하기 위해서는 new 연산자를 이용하여 Queue 인터페이스를 구현한(implements) 클래스의 생성자를 호출한다. ex) Queue ob = new..
/* ====================================================== ■■■ 컬렉션 프레임워크(Collection Framework) ■■■ =========================================================*/ /* [자료 구조] ○ 컬렉션 프레임워크(Collection Framework) = 컬렉션(Collection) + ★ 프레임워크(Framework) ----------------- -----------------------★★★★★ |환경, 틀, 약속 | 집합 → 수집품, 소장품, (물건, 사람들의) 무리, 더미, 수집, 수거 -------------------------------------------------------..
[예외 처리 (Exception Handling)] ○ 프로그램에서 발생하는 오류(Error)는 ① 잘못된 문법을 사용하거나 변수 등을 정의하지 않은 상태에서 사용함으로써 컴파일 단계에서 발생하는 문법적인 오류(Error)와 ② 프로그램을 실행하는 과정에서 발생되는 런타임 오류(Error)로 나눌 수 있다. - 개발자가 문제 분석을 잘못하거나 실수에 의해 엉뚱한 결과를 가져오게 되는 논리적인 오류(Error)와 - 시스템 이상에서 발생되는 시스템 오류(Error), 그리고 - 프로그램 실행 중 발생되는 비정상적인 상황을 의미하는 예외 사항(Exception)이 있다. 예를 들어, → 어떤 수를 0으로 나누거나... → 배열을 제어하는 과정에서 첨자를 벗어나는 상황이 발생하거나... → 존재하지 않는 파일..