1. バッファ
New I/O 1章 バッファ
- 1.1. New I/O の概要
- 1.2. バッファ
- 1.3. バッファの作成方法
- 1.4. バッファの位置プロパティ
- 1.5. バッファの読み書き
- 1.6. ダイレクトバッファ
- 1.7. MappedByteBuffer
- 1.8. メモリ領域の割り当て
1.1. New I/O の概要
New I/O(NIO)APIはJDK1.4で追加された機能です。NIOには、java.ioパッケージの入出力機能を補足するいくつかの機能が用意されています。
NIOの主な構成要素は次の通りです。
パッケージ
|
説明
|
java.nio | NIO全体で使用される「バッファ」クラス |
java.nio.channels | 「チャネル」「セレクタ」クラス |
java.nio.channels.spi | 「チャネル」のサービスプロバイダクラス |
java.nio.charset | 「キャラクタセット」に関するクラス |
java.nio.charset.spi | 「キャラクタセット」のサービスプロバイダクラス |
java.util.regex | 「正規表現」に関するクラス |
1.2. バッファ
バッファ(Buffer)は、プリミティブ型のデータを保存するための入れ物です。バッファクラスは、boolean型以外のすべてのプリミティブ型に対して用意されています。
クラス
|
説明
|
ByteBuffer
|
byte型用のバッファクラス |
CharBuffer
|
char型用のバッファクラス |
ShortBuffer
|
short型用のバッファクラス |
IntBuffer
|
int型用のバッファクラス |
LongBuffer
|
long型用のバッファクラス |
FloatBuffer
|
float型用のバッファクラス |
DoubleBuffer
|
double型用のバッファクラス |
これらのクラスはすべてjava.nioパッケージに属しており、java.nio.Bufferクラスを継承しています。クラス間の関係は次の図のようになります。
MappedByteBufferについては後で説明します。