new Dataprogram接收到的数据byte数组存不下会怎么样

img


如图,如果发送的数据超过了buffer.length的长度,数据存不下会怎样呢,还有这个方法的作用原理

主要是看setData的说明,你就明白了。

    /**
     * Set the data buffer for this packet. This sets the
     * data, length and offset of the packet.
     *
     * @param buf the buffer to set for this packet
     *
     * @param offset the offset into the data
     *
     * @param length the length of the data
     *       and/or the length of the buffer used to receive data
     *
     * @exception NullPointerException if the argument is null
     *
     * @see #getData
     * @see #getOffset
     * @see #getLength
     *
     * @since 1.2
     */
    public synchronized void setData(byte[] buf, int offset, int length)

还有,他是把每个数据包放在一个buff数组里,还是一个数据包对应一个数组,buffer.length只是限制了每个数组的最大长度,若超出则丢包