Spec-Zone.ru › OpenJDK 21

Класс DatagramPacket

java.lang.Object
java.net.DatagramPacket
public final class DatagramPacket extends Object
Этот класс представляет собой пакет данных.

Пакеты данных используются для реализации бессоединительной службы доставки пакетов. Каждое сообщение маршрутизируется от одного компьютера к другому, основываясь только на информации, содержащейся в этом пакете. Несколько пакетов, отправленных с одного компьютера на другой, могут быть маршрутизированы по-разному и могут прибыть в произвольном порядке. Гарантия доставки пакетов не предоставляется.

Если не указано иное, передача null аргумента приводит к выбрасыванию исключения NullPointerException.

Методы и конструкторы DatagramPacket принимают параметры типа SocketAddress. DatagramPacket поддерживает InetSocketAddress и может поддерживать дополнительные SocketAddress подтипы.

Since:
1.0

Краткое описание конструкторов

Конструктор Описание
DatagramPacket(byte[] buf, int length)
Создаёт объект DatagramPacket для приёма пакетов длиной length.
DatagramPacket(byte[] buf, int offset, int length)
Создаёт объект DatagramPacket для приёма пакетов длиной length, указав смещение в буфере.
DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port)
Создаёт пакет данных для отправки пакетов длиной length со смещением offset на указанный порт на указанном хосте.
DatagramPacket(byte[] buf, int offset, int length, SocketAddress address)
Создаёт пакет данных для отправки пакетов длиной length со смещением offset на указанный порт на указанном хосте.
DatagramPacket(byte[] buf, int length, InetAddress address, int port)
Создаёт пакет данных для отправки пакетов длиной length на указанный порт на указанном хосте.
DatagramPacket(byte[] buf, int length, SocketAddress address)
Создаёт пакет данных для отправки пакетов длиной length на указанный порт на указанном хосте.

Краткое описание методов

Модификатор и тип Метод Описание
InetAddress getAddress()
Возвращает IP-адрес машины, на которую отправляется этот пакет или с которой он был получен, или null, если не задан.
byte[] getData()
Возвращает буфер данных.
int getLength()
Возвращает длину отправляемых или полученных данных.
int getOffset()
Возвращает смещение отправляемых или полученных данных.
int getPort()
Возвращает номер порта на удалённом хосте, на который отправляется этот пакет или с которого он был получен, или 0, если не задан.
SocketAddress getSocketAddress()
Возвращает SocketAddress (обычно IP-адрес + номер порта) удалённого хоста, которому этот пакет отправляется или с которого он пришёл.
void setAddress(InetAddress iaddr)
Устанавливает IP-адрес машины, на которую отправляется этот пакет.
void setData(byte[] buf)
Устанавливает буфер данных для этого пакета.
void setData(byte[] buf, int offset, int length)
Устанавливает буфер данных для этого пакета.
void setLength(int length)
Устанавливает длину для этого пакета.
void setPort(int iport)
Устанавливает номер порта на удалённом хосте, на который отправляется этот пакет.
void setSocketAddress(SocketAddress address)
Устанавливает SocketAddress (обычно IP-адрес + номер порта) удалённого хоста, на который отправляется этот пакет.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

DatagramPacket

public DatagramPacket(byte[] buf, int offset, int length)
Создаёт объект DatagramPacket для приёма пакетов длиной length, задавая смещение в буфере.

Аргумент length должен быть меньше или равен buf.length.

Параметры:
buf - буфер для хранения входящего дейтаграммы.
offset - смещение для буфера
length - количество байтов для чтения.
Исключения:
IllegalArgumentException - если длина или смещение отрицательные, или если длина плюс смещение больше длины предоставленного буфера пакета.
С момента:
1.2

DatagramPacket

public DatagramPacket(byte[] buf, int length)
Создаёт объект DatagramPacket для приёма пакетов длиной length.

Аргумент length должен быть меньше или равен buf.length.

Параметры:
buf - буфер для хранения входящего дейтаграммы.
length - количество байтов для чтения.
Исключения:
IllegalArgumentException - если длина отрицательная или если длина больше длины предоставленного буфера пакета.

DatagramPacket

public DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port)
Создаёт объект DatagramPacket для отправки пакетов длиной length со смещением offset на указанный номер порта на указанном хосте. Аргумент length должен быть меньше или равен buf.length.
Параметры:
buf - данные пакета.
offset - смещение данных пакета.
length - длина данных пакета.
address - адрес назначения или null.
port - номер порта назначения.
Исключения:
IllegalArgumentException - если длина или смещение отрицательные, или если длина плюс смещение больше длины предоставленного буфера пакета, или если порт находится вне допустимого диапазона.
С момента:
1.2
См. также:
  • InetAddress

DatagramPacket

public DatagramPacket(byte[] buf, int offset, int length, SocketAddress address)
Создаёт объект DatagramPacket для отправки пакетов длиной length со смещением offset на указанный номер порта на указанном хосте. Аргумент length должен быть меньше или равен buf.length.
Параметры:
buf - данные пакета.
offset - смещение данных пакета.
length - длина данных пакета.
address - адрес сокета назначения.
Исключения:
IllegalArgumentException - если адрес null или его тип не поддерживается, или если длина или смещение отрицательные, или если длина плюс смещение больше длины предоставленного буфера пакета.
С момента:
1.4
См. также:
  • InetAddress

DatagramPacket

public DatagramPacket(byte[] buf, int length, InetAddress address, int port)
Создаёт объект DatagramPacket для отправки пакетов длиной length на указанный номер порта на указанном хосте. Аргумент length должен быть меньше или равен buf.length.
Параметры:
buf - данные пакета.
length - длина пакета.
address - адрес назначения или null.
port - номер порта назначения.
Исключения:
IllegalArgumentException - если длина отрицательная, или если длина больше длины предоставленного буфера пакета, или если порт находится вне допустимого диапазона.
См. также:
  • InetAddress

DatagramPacket

public DatagramPacket(byte[] buf, int length, SocketAddress address)
Создаёт объект DatagramPacket для отправки пакетов длиной length на указанный номер порта на указанном хосте. Аргумент length должен быть меньше или равен buf.length.
Параметры:
buf - данные пакета.
length - длина пакета.
address - адрес назначения.
Исключения:
IllegalArgumentException - если адрес null или его тип не поддерживается, или если длина отрицательная, или если длина больше длины предоставленного буфера пакета, или если порт находится вне допустимого диапазона.
С момента:
1.4
См. также:
  • InetAddress

Подробное описание методов

getAddress

public InetAddress getAddress()
Возвращает IP-адрес машины, на которую отправляется или с которой получен этот дейтаграмма, или null, если не задан.
Возвращает:
IP-адрес машины, на которую отправляется или с которой получен этот дейтаграмма.
См. также:
  • InetAddress
  • setAddress(java.net.InetAddress)

getPort

public int getPort()
Возвращает номер порта на удалённом хосте, на который отправляется или с которого получен этот дейтаграмма, или 0, если не задан.
Возвращает:
номер порта на удалённом хосте, на который отправляется или с которого получен этот дейтаграмма.
См. также:
  • setPort(int)

getData

public byte[] getData()
Возвращает буфер данных. Принятые или отправляемые данные начинаются со offset в буфере и имеют длину length.
Возвращает:
буфер, используемый для приёма или отправки данных
См. также:
  • setData(byte[], int, int)

getOffset

public int getOffset()
Возвращает смещение данных для отправки или смещение принятых данных.
Возвращает:
смещение данных для отправки или смещение принятых данных.
С момента:
1.2

getLength

public int getLength()
Возвращает длину данных для отправки или длину принятых данных.
Возвращает:
длина данных для отправки или длина принятых данных.
См. также:
  • setLength(int)

setData

public void setData(byte[] buf, int offset, int length)
Устанавливает буфер данных для этого пакета. Это устанавливает данные, длину и смещение пакета.
Параметры:
buf - буфер для установки для этого пакета
offset - смещение в данных
length - длина данных и/или длина буфера, используемого для приёма данных
Исключения:
IllegalArgumentException - если длина или смещение отрицательные, или если длина плюс смещение больше длины предоставленного буфера пакета.
С момента:
1.2
См. также:
  • getData()
  • getOffset()
  • getLength()

setAddress

public void setAddress(InetAddress iaddr)
Устанавливает IP-адрес машины, на которую отправляется этот дейтаграмма.
Параметры:
iaddr - InetAddress, или null.
С момента:
1.1
См. также:
  • getAddress()

setPort

public void setPort(int iport)
Устанавливает номер порта на удалённом хосте, на который отправляется этот дейтаграмма.
Параметры:
iport - номер порта
Исключения:
IllegalArgumentException - если порт находится вне допустимого диапазона
С момента:
1.1
См. также:
  • getPort()

setSocketAddress

public void setSocketAddress(SocketAddress address)
Устанавливает SocketAddress (обычно IP-адрес + номер порта) удалённого хоста, на который отправляется этот дейтаграмма.
Параметры:
address - SocketAddress
Исключения:
IllegalArgumentException - если адрес null или подкласс SocketAddress не поддерживается.
С момента:
1.4
См. также:
  • getSocketAddress()

getSocketAddress

public SocketAddress getSocketAddress()
Возвращает SocketAddress (обычно IP-адрес + номер порта) удаленного узла, которому отправляется или с которого приходит этот пакет.
Возвращает:
the SocketAddress
С:
1.4
См. также:
  • setSocketAddress(java.net.SocketAddress)

setData

public void setData(byte[] buf)
Устанавливает буфер данных для этого пакета. При смещении этого объекта DatagramPacket, равном 0, и длине, равной длине buf.
Параметры:
buf - буфер для установки для этого пакета.
С:
1.1
См. также:
  • getLength()
  • getData()

setLength

public void setLength(int length)
Устанавливает длину для этого пакета. Длина пакета — количество байтов из буфера данных пакета, которые будут отправлены, или количество байтов буфера данных пакета, которые будут использованы для получения данных. length плюс offset должно быть меньше или равно длине буфера данных пакета.
Параметры:
length - длина для установки для этого пакета.
Исключения:
IllegalArgumentException - если длина отрицательная или если длина плюс смещение больше длины буфера данных пакета.
С:
1.1
См. также:
  • getLength()
  • setData(byte[], int, int)

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/net/DatagramPacket.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API