タグ

ブックマーク / www.javainthebox.net (2)

  • Java API ダイジェスト java.nio パッケージ

    バッファ バッファはboolean型を除いたプリミティブ型に特化したコンテナクラスです。バッファの主な特徴を次に示します。 容量の拡張が不可 シーケンシャルアクセス Javaのヒープ外のメモリへの直接アクセスをサポート メモリにマップされたファイルをサポート Buffer クラスはabstractクラスなので、使用するのはプリミティブ型に応じた派生クラスです。Bufferクラスは共通機能、派生クラスでは要素にアクセスするためのメソッドなどが定義されています。 New I/Oではヒープ外にバッファを割り付けることができるようになり、大容量でしかも高速にアクセスすることができるようになりました。また、ファイルをメモリにマップすることもできるようになり、これのアクセスにもバッファが使用されます。 チャネル ファイルやソケットへのコネクションを表すのがチャネルです。Channelインタフェースは単

  • J2SE, v1.4 の新機能 New I/O Channel 基礎編

    今回取り上げる Channel は、ファイルや Socket といった今までストリームとして扱っていたものに対するコネクションを表すインタフェースです。 今まで java.io パッケージで提供されていた InputStream/OutputStream やその派生クラス群があるのに、なぜ Channel を新たに導入したのでしょうか。 一番大きな理由はやはりパフォーマンスのようです。 ストリームだとちまちまと読み書きを行うイメージがありますが (あくまでもイメージです ^^;;)、Channel をインプリメントしたクラスではガバッと読んで、ガバッと書き込みを行うという感じです。まとめて行うので、その分効率が上がるというわけです。ここで活躍するのが前回の Buffer です。 実際には java.nio.channels.Channel インタフェースには読み込みや書き込みのメソッドは定

  • 1