nio java 包_java.nio包的分析(一)--Buffer类

继上次草草的分析完Java.nio.current的分析,个人感觉还是收获非常大的。虽说不能理解全部,但是绝对比以前的感觉好很多。趁着这股热劲,最近开始研究Java.nio下的源码,Java.nio,也许 也是非常少的人听过吧,在Java的基础书里面一般也不会提及到的,我记得网上好像有2中说法,一种Nio为new I/O的简写还有一种是Nio为NonBoclk  I/O的意思。非阻塞I/O。下面给出百度百科上的解释。

7aae3f8fc52af8cc9994c5fa20796b36.png

好的,下面来说一下,nio下的包的目录结构,总体来说,Nio算的上Java后来添加的一项高级属性了吧。

531b5176625d291402858e10134ff10b.png

目录很清晰,通过目录名称也基本知道他的一些主要的功能分类,下面从上往下开始逐步的研究它的源代码,Java.nio下面直接的类为一堆的Buffer缓冲类,后面的各种Channel都是基于Buffer类进行操作的。

72e594fdaefde76428cd1e327dd069a8.png

首先我们当然得先了解里面最最原始的类,Buffer的构成,才能明白后面衍生出的各种基本裂隙对于的Buffer 类

e12fa8d1ceba27d4477dc8c3b2510fff.png

Buffer类的后续操作都是基于这几个值进行操作的,不信,接着往下看,

38937f88b8456941273ce0de6e42e7f5.png

a24f9a931986da29ec7bd48c1c88a971.png

e2550f242fd50e6f5fb7087432013366.png

下面在来看看其中继承下来的一个类,IntBuffer,其他相应数据类型,与此相似,所以不做分析

bd3b27f6fd1b7dba5a632ff4a2a84e3a.png

c86bcf0d608e423b6a0451236acb0b8c.png

里面主要有一些操作,比如put,get,还有一个比较的方法

6462f2072685603edf94ab98062ab513.png

88d6b03a6dcb2cde7c1b1a0fa67bcfb8.png

另外在这个类里面还有一个比较奇葩的类MappedByteBuffe,内存映射Buffer:

c1b2f506e0f4eb49ae5d8a73e0f466d1.png

Buffer类的分析到此结束了,后面将会陆续更新Java,nio包的分析二,三等等

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值