Метод фабрики ByteBuffer возвращает класс, который реализует ByteBuffer.
byte[] bytes = new byte[256];
ByteBuffer buf = ByteBuffer.wrap(bytes);
System.out.println(buf.getClass());
печать
class java.nio.HeapByteBuffer
Использование ByteBuffer - относительно продвинутый инструмент, вам нужно хорошо понять Java, прежде чем пытаться его расширить.
Вы можете увидеть это, посмотрев на код. В моей IDE вы можете найти его, выполнив + для метода.
public static ByteBuffer wrap(byte[] array) {
return wrap(array, 0, array.length);
}
звонки
public static ByteBuffer wrap(byte[] array,
int offset, int length)
{
try {
return new HeapByteBuffer(array, offset, length);
} catch (IllegalArgumentException x) {
throw new IndexOutOfBoundsException();
}
}
Кстати: я большой поклонник использования ByteBuffer, однако вам действительно нужно понимать, что вы делаете для его использования. особенно при разборе данных из ByteBuffer. Разработчики с десятилетним опытом работы считают это сложным для использования.