mark():把当前的position赋值给mark
public final Buffer mark() { mark = position; return this;}reset():把mark值还原给position
public final Buffer reset() { int m = mark; if (m < 0) throw new InvalidMarkException(); position = m; return this;}clear():一旦读完Buffer中的数据,需要让Buffer准备好再次被写入,clear会恢复状态值,但不会擦除数据。
public final Buffer clear() { position = 0; limit = capacity; mark = -1; return this;}flip():Buffer有两种模式,写模式和读模式,flip后Buffer从写模式变成读模式。
public final Buffer flip() { limit = position; position = 0; mark = -1; return this;}rewind():重置position为0,从头读写数据。
public final Buffer rewind() { position = 0; mark = -1; return this;}目前Buffer的实现类有以下几种: