반응형
NIO 클래스의 버퍼중 유일하게 다이렉트 버퍼(힙이 아닌 일반메모리에 접근)로 만들 수 있고
다른 유형의 버퍼로 변환 가능
buffer 구성요소
capacity(용량) : 버퍼가 사용할 수 있는 최대 크기. 음수가 될 수 없으며 한번 정하면 바꿀 수 없음
limit(끝점) : 버퍼에서 읽거나 쓸 수 있는 위치의 한계를 나타냄. capacity와 같거나 작고 음수가 될 수 없음
position(위치) : 현재 읽거나 쓸 수 있는 버퍼의 위치값. position이 limit와 같다면 데이터를 읽거나 쓸 수 없음
mark(위치지정) : 현재 버퍼의 position을 표시,사용자 지정, 위치를 기억하다 돌아갈 일이 있을때 사용
0<=mark<=position<=limit<=capacity
buffer 주요 메서드
get/put :
데이터를 읽거나 쓸때
put으로 데이터를 쓰게되면 position이 이동하고 limit까지 도달 가능
clear :
데이터의 실제 데어터를 삭제 하는것이 아니라 position을 0으로 설정, limit를 capacity로 설정하여 다시 쓸 수 있게 함
rewind :
position을 0으로 하고 mark를 제거해
put메서드로 설정한 값을 취소하고 다시 설정하거나 처음부터 끝까지 읽기위한 목적으로 사용
flip :
limit를 현재 position으로 설정하고 position을 다시 0으로 설정, mark가 있다면 제거
put 한것을 처음부터 현재 position까지 읽기 위해 사용
다른 유형의 버퍼로 변환 가능
buffer 구성요소
capacity(용량) : 버퍼가 사용할 수 있는 최대 크기. 음수가 될 수 없으며 한번 정하면 바꿀 수 없음
limit(끝점) : 버퍼에서 읽거나 쓸 수 있는 위치의 한계를 나타냄. capacity와 같거나 작고 음수가 될 수 없음
position(위치) : 현재 읽거나 쓸 수 있는 버퍼의 위치값. position이 limit와 같다면 데이터를 읽거나 쓸 수 없음
mark(위치지정) : 현재 버퍼의 position을 표시,사용자 지정, 위치를 기억하다 돌아갈 일이 있을때 사용
0<=mark<=position<=limit<=capacity
buffer 주요 메서드
get/put :
데이터를 읽거나 쓸때
put으로 데이터를 쓰게되면 position이 이동하고 limit까지 도달 가능
clear :
데이터의 실제 데어터를 삭제 하는것이 아니라 position을 0으로 설정, limit를 capacity로 설정하여 다시 쓸 수 있게 함
rewind :
position을 0으로 하고 mark를 제거해
put메서드로 설정한 값을 취소하고 다시 설정하거나 처음부터 끝까지 읽기위한 목적으로 사용
flip :
limit를 현재 position으로 설정하고 position을 다시 0으로 설정, mark가 있다면 제거
put 한것을 처음부터 현재 position까지 읽기 위해 사용
반응형
'개발 > 자바' 카테고리의 다른 글
[자바] StringTokenizer와 Split 차이 (1) | 2011.12.20 |
---|---|
[Java]Convert byte to unsigned byte (0) | 2011.07.08 |
[JAVA]LittleEndian 과 BigEndian (0) | 2011.07.08 |
[자바]비트 연산자와 시프트 연산자 (0) | 2011.07.05 |
[자바] 16진수,8진수, 2진수 표현하기 (1) | 2011.07.05 |
댓글