一、Java NIO概述![](https://i-blog.csdnimg.cn/blog_migrate/42aa08be9bc87b036740c1905f957ca3.png)
1.阻塞IO
2.非阻塞IO(NIO)
![](https://i-blog.csdnimg.cn/blog_migrate/ad12f136b2836ca35d87667644afe087.png)
![](https://i-blog.csdnimg.cn/blog_migrate/114874896762c38f0deddfe31fe99190.png)
3.NIO概述![](https://i-blog.csdnimg.cn/blog_migrate/a6b009adf89e2d46e5b3bf4545098b98.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1087edd4cc9d025fde06356adbc9b36e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/551c946917b5415d797de67ad1279b3f.png)
二、Java NIO(Channel)
1.Channel概述
![](https://i-blog.csdnimg.cn/blog_migrate/972c7ee1ea974f688284b5b3b719793c.png)
2.Channel实现 ![](https://i-blog.csdnimg.cn/blog_migrate/69d15e1db7d1f6a72e71ec2fa3887225.png)
3.FileChannel介绍和示例![](https://i-blog.csdnimg.cn/blog_migrate/70ec57fd1036d325ef1612d876111802.png)
![](https://i-blog.csdnimg.cn/blog_migrate/deffa555748914760132758bcac9fa17.png)
4.FileChannel操作详解![](https://i-blog.csdnimg.cn/blog_migrate/627759fbee7fcdfc35731dfc044bc859.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5d14da11ea0d7eb89c1e03e5b1359b06.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1ae7f9a5f3bb1a95c4db3f720348a4d8.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83c4e99b2b8b08c3701b67a1c4c78130.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ff28615d464c1a21e98b24dacb29d5a4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cfd79be7b528f68e2fa4a30c6fff24d0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/aa0ac7a4f26eeb2aad6ad73fa8f3729b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c6dfefec32b6de5a9355a3219eb4967d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2d640cc7821a601eb4bd1ad92a23459e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/68e38727d78241ac77b8ab701ae75f31.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4abc09deb8fd09bb32ec0fd2d7485365.png)
![](https://i-blog.csdnimg.cn/blog_migrate/17ac7853485de72e66c9bb2d7e433e1d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4568f02633e7b07c5b786165e6599274.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d164709a591e4bd47f77ee1c925c9f3c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5f225200b371fb5b64b6b3c3b8f023c7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8a7561bb62caa339063a816c8d2008d2.png)
5.Socket通道 ![](https://i-blog.csdnimg.cn/blog_migrate/a420b0e3f4d8316c28ffa611092d18c0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5bd74afb56c51c1a6cb9754016f48e3b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1321879ef5b35fedd855e130b730044a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b3254ce7329158290309ad2769aa77af.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1468602cb4ee4ddb6a5a5517195b3efb.png)
![](https://i-blog.csdnimg.cn/blog_migrate/654ad41406a408fab0e6a1c0c3d286a4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8e0c6d6332d39222003f1739a49b7041.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6d7f08c5aa313de390fa37f17ecb1b3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f1a257881aac93ae8ba6ef7068c82e5b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/3a7b9e5ea413cdf6e4271eaddb497d71.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f82c8f5e87502643ea31fd989d057519.png)
![](https://i-blog.csdnimg.cn/blog_migrate/542a3fff3e03af6647b90b06accdf06c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/50be115ca7240288a6cbe3cd21877073.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d0273a778edbce9acaf93d78ad9c7f40.png)
![](https://i-blog.csdnimg.cn/blog_migrate/7412dc71479d67f1595edf11f3957247.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f569f1e9d9ff4c7d66b2b2b3761c95ee.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f11a3bc8650e25e22ffb781b2506c9b0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/63efc9c4affef5e5059fa7d4ccb51276.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ff711080251da230649fd30304918963.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f0946c02ab6274b9d57ff1fb30f0f4cd.png)
![](https://i-blog.csdnimg.cn/blog_migrate/608260455bd5240866f3e293b78b8568.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9356568ba95f94de3726152399ce92a7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9fc0190ab1ebeff14589d27d62ef5aea.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f20370fc2cf2c0b729e46cc1bf42e8ca.png)
![](https://i-blog.csdnimg.cn/blog_migrate/fbd5a7fc3d3eedaf5324f1d4c41a431c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4d1e63895f90587eb1b94e320f982824.png)
![](https://i-blog.csdnimg.cn/blog_migrate/dc6ce5289467887edea20d86dcc8dca3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/bba47002d9c54e51487a4b8d679d0112.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c68228d35ab4a681a92639c52cdfb5e4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/26152387be0180bbe4ceb6ff36109f02.png)
![](https://i-blog.csdnimg.cn/blog_migrate/03c7c4b6969a616c2a33f894eeef3e85.png)
![](https://i-blog.csdnimg.cn/blog_migrate/55658443eb866a574e19f67f915479db.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cb0a8c75715ccb23c7fb2c316702a8ca.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d78da3fae92b391fd221d1cc980d438f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/371e99235c50471a5ee2562edba0ba98.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e470e5a61b98eaa403e7b473499bd4cc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/37dff3aa88ddaccfcb4175a3d88ac7ae.png)
![](https://i-blog.csdnimg.cn/blog_migrate/67f3646456039afeed927b9d192db4f5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9c34b554dbfe98da5ec110b1a5d6e399.png)
![](https://i-blog.csdnimg.cn/blog_migrate/41ddf987654b721791225ebd3ff7ea05.png)
6.Scatter/Gather
![](https://i-blog.csdnimg.cn/blog_migrate/1b4b410d6eb1d1a6893e4b34e3d6ce2a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/095bffcd1b61886e296f27088e408a83.png)
![](https://i-blog.csdnimg.cn/blog_migrate/03881c76c4d37824a0161842cb6560b4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/de32d95df947ec156feaa6d76480436c.png)
三、Java NIO(Buffer)
1.Buffer简介
![](https://i-blog.csdnimg.cn/blog_migrate/3b5f0a3b01abbe932c852774c39939fd.png)
2.Buffer的基本用法
![](https://i-blog.csdnimg.cn/blog_migrate/dc50cd0559492ab9a14baf2a83e6f8c3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/efd55f44c832e2ba81dfa2ea6b549eba.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a555183ac4accd515d4ff4a87af13533.png)
![](https://i-blog.csdnimg.cn/blog_migrate/32e045ec171d259f50806e9a35b4c84b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a88238dde9c8de32e5df4cb700f39c0d.png)
3.Buffer的capacity、position和limit
![](https://i-blog.csdnimg.cn/blog_migrate/6cf98931f74b79c7aaaa9fbf59dbef71.png)
![](https://i-blog.csdnimg.cn/blog_migrate/424010b5042955f71d1877731c3e4d27.png)
4.Buffer的类型
![](https://i-blog.csdnimg.cn/blog_migrate/fa0c83cb336961aca2429cf3d0267622.png)
5.Buffer分配和写数据
![](https://i-blog.csdnimg.cn/blog_migrate/9215184475e8770d46db9b12521fec87.png)
![](https://i-blog.csdnimg.cn/blog_migrate/39ee23d980e1544eef8da1ea0b62dd45.png)
6.从Buffer中读取数据
7.Buffer几个方法
![](https://i-blog.csdnimg.cn/blog_migrate/bfc77568dedd4b32af4c842575f74f61.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c2e4eaa31fcd034bd4e3f80adc93849d.png)
8.缓冲区操作
四、Java NIO(Selector)
1.Selector简介
![](https://i-blog.csdnimg.cn/blog_migrate/8bf8d7c6e77e99811bc517224d27809d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1b295cd049d80c804ad278d91289db28.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c0e19bbcf770192af927b2356dc431ea.png)
![](https://i-blog.csdnimg.cn/blog_migrate/304a47fabf1f7427178f35e8b947ee1e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f893841fca2d37efc1bca491de072d9c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ade76298c6a0018357ce3d093ac7c76c.png)
2.Selector的使用方法
![](https://i-blog.csdnimg.cn/blog_migrate/f76daa3703ec1f013fd4bf12d4461bc1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/607c8b5bf45a73650225a360620df0cb.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5bc36eed7a06f52bd5ba2b82f06124ee.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d813f67433e81bc13c35d4b1a969bc9f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b846710b20047ef5b24e1bdb64c8920a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a926503198e76f2b607ca5e5eb2a0c2a.png)
3.示例代码
![](https://i-blog.csdnimg.cn/blog_migrate/44147c9746bd3609c9921519b0b9ffed.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8aed538a5c28e83fadb3467d909e351a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c2fa89fe1ce132dc45cef125c05e93e3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d5364ae6138ea1995f18e13e3110bb7f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/eb33e879202d9c53b117cfc7e0251db9.png)
![](https://i-blog.csdnimg.cn/blog_migrate/70ce17a9c9a238349d33c677011c4b68.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ae08085efc3ce2d007f25e6ec20080a0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1cf456674a89ef3708e05a381fa7781e.png)
五、Java NIO(Pipe和FileLock)
1.Pipe
![](https://i-blog.csdnimg.cn/blog_migrate/c63d1f8bbef2483024fcc9922e9d72d0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f71bfe299c74e21c1e0d50f27fbee4de.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c5f7e2297d9cf7e39bd909abee9ab44a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b3a6c72f0c941240c13341707904d737.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cab19ca6525a1d434c0c191d5153ba77.png)
2.FileLock
![](https://i-blog.csdnimg.cn/blog_migrate/9fa5c71c1b771f82461c07a77b799bc6.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5d920bc3adad5cec0d233ffcc3475f60.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e295f1a6dd3c2ff4ff26093e9d9be616.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b17bc96bb6529440061c387b15d7721b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/349cbe0aba56274c240403ac3d7413ca.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6521ec514f88b8a588a163c8bad4e690.png)
![](https://i-blog.csdnimg.cn/blog_migrate/817d1bbe300b7d82911074e6fb76fe52.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6732241aeab40db37f4d1d4236e61cf0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cf98f517b81f6e223fb871c670a85373.png)
![](https://i-blog.csdnimg.cn/blog_migrate/aaa272c19dc58bfb18cde529ca1ecb70.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0ee4f6d7db299de8c901d780e37cbc9a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/99a0f9a9365bc9103d0e8a526fab0c04.png)
六、Java NIO(其他)
1.Path
![](https://i-blog.csdnimg.cn/blog_migrate/faf1e7ff94753742f11cd7d84ceece56.png)
![](https://i-blog.csdnimg.cn/blog_migrate/196a4fd8dd753105acb52131c875f3b0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e9d668e8eb289bfe8765254f8dd5b631.png)
![](https://i-blog.csdnimg.cn/blog_migrate/406cad383234a56269ec8541d215916a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5aa02aaabc3ff73afe745dbe784ef1bc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c5d07a24229174771b891dee5e9100ae.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e3ef66549e3a968236dfaca326328695.png)
2.Files
![](https://i-blog.csdnimg.cn/blog_migrate/17b29fb79371321beb0450e5c1989c7c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/62123ca79708924baed11aa766fb545b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/91abf9f2f9b25b8e089e64ea10f38aff.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b74fa52f9436fff025ba2071789c06f0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e71c3d230e15aa33507496fbbfac2b93.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1157122a3e886e70e3af53547600b661.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ae41a76ce75484f2d7fb8121fb105c05.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ca103758216efc19c06de21d83d23784.png)
3.AsynchronousFileChannel
![](https://i-blog.csdnimg.cn/blog_migrate/28f9ecbd26db71fda9c5ec942e732b20.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2a646349a477deabf8b51882ed6e8171.png)
![](https://i-blog.csdnimg.cn/blog_migrate/31af2a9fa61c39e61b1fbcd682932c49.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a5311f2fc1437dc994f884fded2fac4c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ea05213d999c68c75f4fcf7d4fdc6097.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e1b82a165b563f2f8abd585d7585dea9.png)
![](https://i-blog.csdnimg.cn/blog_migrate/92994442ab2f49d9b3893b24c081719c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/13d89a8a57f458264afb7462bf8f287a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/74f51269fc77b92ee0c32c30e99d9c39.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8fbfd8505f043b31bd2499cf183fc9f3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/03ee0dd7e5d8723b971e8b82817dbd8f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c09294361d6d35b3a19397e8cc87a89e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6e63c57feacf0f15f385211039e2d206.png)
4.字符集(Charset)
![](https://i-blog.csdnimg.cn/blog_migrate/cd9c3b6b1d872d5313400f6dbd6be4bf.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a7f4f6b6cc7d9a306cb0a485344102f4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9564904eaec6cbc79368b28b4c287764.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2056fc98ff20fcca80360014af922ede.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0765cc76064cf514cfc3edadea3a93bb.png)
七、Java NIO综合案例