code: public void getBytes(int index, byte[] destination, int destinationIndex, int length)
      {
          checkPositionIndexes(index, index + length, this.length);
          checkPositionIndexes(destinationIndex, destinationIndex + length, destination.length);
          index += offset;
          System.arraycopy(data, index, destination, destinationIndex, length);
      }
docs: Transfers this buffer's data to the specified destination starting at
  the specified absolute {@code index}.
  
  @param destinationIndex the first index of the destination
  @param length the number of bytes to transfer
  @throws IndexOutOfBoundsException if the specified {@code index} is less than {@code 0},
  if the specified {@code dstIndex} is less than {@code 0},
  if {@code index + length} is greater than
  {@code this.capacity}, or
  if {@code dstIndex + length} is greater than
  {@code dst.length}