在進(jìn)行數(shù)據(jù)傳輸?shù)臅r(shí)候,往往需要使用到緩沖區(qū),常用的緩沖區(qū)就是JDK NIO類庫(kù)中提供的java.nio.Buffer,實(shí)現(xiàn)類如下:
在使用NIO編程時(shí),最常用的是其中的ByteBuffer,本篇分析ByteBuffer內(nèi)部的源碼實(shí)現(xiàn),順序從父類Buffer入手,了解父類中基礎(chǔ)API的實(shí)現(xiàn),再到各個(gè)實(shí)現(xiàn)子類的實(shí)現(xiàn)。
Buffer
Buffer是存放一種特定的、原始的數(shù)據(jù)的容器。Buffer是一種特定原始類型元素的線性的有限序列集合,其核心的屬性有capacity、limit、Position。
capacity:Buffer的容量,表示可以容納的元素?cái)?shù)量