抽象类ByteBuffer
ByteBuffer的继承关系
父类
子类
目前,大概有5个实现类
ByteBuffer 底层,主要依赖?
顾名思义,从ByteBuffer的名称来看,这个缓冲区针对的是字节类型的缓冲区,
从源码中,也可以查询到, 就是字节数组
ByteBuffer的主要api
我这里仅仅分享一下,get,put,因为这两个方法用到的最多了。
put 操作
目前有5个实现类,我们可以依次查看,到底如何实现的
DirectByteBuffer.java
DirectByteBufferR.java
HeapByteBuffer.java
HeapByteBufferR.java
get操作
get操作,目前有两种实现思路,如下所示
HeapByteBuffer.java
DirectByteBuffer.java
总结:
其实,当我看到这些的时候,很开心,印证了自己的猜想,突然意识到,JavaNIO的Buffer,也是对数组的封装;那么按照类似的思路,我们也可以慢慢的制定属于我们自己的框架。感觉有些事件一下子相同了。心里有底气了。
很明显提供了一些思路,当我们在开发自己的框架时,如果有场景需要缓存的话,也可以这样做。
其他Buffer的实现类,也类似,目前就不在一一看了。
//不知道为什么JDK里的Buffer源码里,会有很多空白行,感觉格式排版有问题吧