| クラス | 説明 | 
|---|---|
| Buffer | 特定のプリミティブ型データのコンテナです。 | 
| ByteBuffer | byteバッファです。 | 
| ByteOrder | byte順序の型保証された列挙です。 | 
| CharBuffer | charバッファです。 | 
| DoubleBuffer | doubleバッファです。 | 
| FloatBuffer | floatバッファです。 | 
| IntBuffer | intバッファです。 | 
| LongBuffer | longバッファです。 | 
| MappedByteBuffer | ファイルのメモリー・マップ領域を内容とするダイレクトbyteバッファです。 | 
| ShortBuffer | shortバッファです。 | 
| 例外 | 説明 | 
|---|---|
| BufferOverflowException | 相対put操作がターゲット・バッファのリミットに達したときにスローされる非チェック例外です。 | 
| BufferUnderflowException | 相対get操作がソース・バッファのリミットに達したときにスローされる非チェック例外です。 | 
| InvalidMarkException | マークが定義されていない状態でバッファをリセットしようとしたときにスローされる、非チェック例外です。 | 
| ReadOnlyBufferException | 読込み専用のバッファ上でputやcompactといった内容変更メソッドが呼び出されるときにスローされる非チェック例外です。 | 
NIO APIは、主に次の抽象化要素から構成されます。
「Buffer」。データのコンテナ。
 「Charset」と、それに対応する「デコーダ」および「エンコーダ」
 (byteとUnicode文字との間の変換を行う)。 
 さまざまな種類の「Channel」(入出力操作を実行できる
エンティティへの接続を表す)。 
 「Selector」と「SelectionKey」
(「SelectableChannel」とともに多重化された非ブロック
入出力 機能を定義する)。  
 java.nioパッケージは、NIO API全体で使用するバッファ・クラスを定義します。文字セットAPIはjava.nio.charsetパッケージで、チャネルAPIとセレクタAPIはjava.nio.channelsパッケージで定義されています。これらのサブパッケージは、それぞれ固有のサービス・プロバイダ(SPI)サブパッケージを備えています。それらのサブパッケージの内容は、プラットフォームのデフォルト実装を拡張するときや、代替実装を構築するときに使用します。  
バッファ
説明
Buffer位置、リミット、容量 
クリア、フリップ、リワインド、マーク/リセットByteBufferget/put、圧縮、ビュー、割り当て、ラップ MappedByteBufferファイルにマップされるbyteバッファ CharBufferget/put、圧縮、割り当て、ラップ DoubleBuffer' ' FloatBuffer' ' IntBuffer' ' LongBuffer' ' ShortBuffer' ' ByteOrderbyte順序の型保証された列挙 
 「バッファ」は、特定のプリミティブ型のデータを一定の容量だけ格納するコンテナです。バッファには、こうしたデータとともに、「位置」(次に読み込みまたは書込みを行う要素のインデックス)と「リミット」(読み込みまたは書込みを行ってはならない最初の要素のインデックス)が格納されます。基底クラスBufferクラスは、これらのプロパティに加えて、クリア、フリップ、およびリワインドのメソッド、現在の位置をマークするメソッド、前のマーク位置に戻るメソッドも定義します。
非ブール型のプリミティブ型を対象とするバッファ・クラスもあります。各クラスは、バッファでのデータの入出力を行うgetおよびputメソッド、バッファの圧縮、複製、およびスライス用のメソッド、新しいバッファを割り当てる staticメソッド、既存の配列をバッファにラップするstaticメソッドからなるファミリを定義します。
byteバッファには、入出力操作のソースやターゲットとして使用できるという特徴があります。byteバッファは、その他のバッファ・クラスにはない機能をいくつかサポートしています。
byteバッファは、「ダイレクト」バッファとして割り当てることができます。Java仮想マシンは、ダイレクトbyteバッファに対してできるだけネイティブの入出力操作を行います。
 byteバッファは、ファイルの1つの領域をメモリーに直接マップすることで作成できます。この場合、MappedByteBufferクラスで定義されているいくつかのファイル関連操作を追加で実行できます。  
byteバッファの内容は、異種または同種のバイナリ・データ (非ブール型のプリミティブ型データ)のシーケンスとして提示されます。byte順序はビッグ・エンディアンまたはリトル・エンディアンになります。
 ほかで指定がない場合、null引数をこのパッケージの任意のクラスまたはインタフェースのメソッドまたはコンストラクタへ渡すと、NullPointerExceptionがスローされます。
 バグまたは機能を送信 
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
 Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.