1. 程式人生 > >Java NIO與IO的區別

Java NIO與IO的區別

Java.nio 俗稱 New IO (從1.4開始),全稱是Java Non-blocking IO,即非阻塞的IO,為所有的原始型別(boolean型別除外)提供快取持的資料容器,使用它可以提供非阻塞式的高伸縮性網路IO。

NIO與IO的區別:

1.標準的IO的操作都是位元組流( InputStream是所有位元組輸入流的父抽象類,而OutputStream是所有位元組輸出流的父抽象類。)和字元流(Reader是所有讀取字串輸入流的父抽象類,而writer是所有輸出字串的父抽象類);NIO是基於通道(Channel)和緩衝區(Buffer)進行操作,資料總是從通道讀取到緩衝區中,或者從緩衝區寫入到通道中;

2. Java NIO支援非同步的IO;


3. Java NIO 引入Selectors(選擇器),一個執行緒可以監聽多個通道的事件(如資料到達事件)。