publicabstractclassBuffer{// Invariants: mark <= position <= limit <= capacity/**
* 标记
*/privateint mark =-1;/**
* 位置,下一个要被读/写的元素的索引,每次读写缓冲区数据都会进行改变为下次读写准备
*/privateint position =0;/**
* 表示缓冲区当前的终点,不能对缓冲区超过极限的位置进行读写操作,且极限是可以修改的
*/privateint limit;/**
* 容量,即可以容纳的最大数据量,在缓冲区创建时被设定且之后不能改变
*/privateint capacity;// Used only by direct buffers// NOTE: hoisted here for speed in JNI GetDirectBufferAddresslong address;