Класс DatagramPacket
- java.lang.Object
-
- java.net.DatagramPacket
public final class DatagramPacket extends Object
Этот класс представляет собой пакет данных (datagram packet).
Пакеты данных используются для реализации бессоединительной службы доставки пакетов. Каждое сообщение маршрутизируется с одного компьютера на другой, основываясь исключительно на информации, содержащейся в этом пакете. Несколько пакетов, отправленных с одного компьютера на другой, могут быть маршрутизированы по-разному и могут прибыть в произвольном порядке. Доставка пакетов не гарантируется.
- С момента:
- 1.0
Конструкторы
| Конструктор | Описание |
|---|---|
DatagramPacket(byte[] buf,
int length) | Создаёт объект |
DatagramPacket(byte[] buf,
int offset,
int length) | Создаёт объект |
DatagramPacket(byte[] buf,
int offset,
int length,
InetAddress address,
int port) | Создаёт пакет данных для отправки пакетов длиной |
DatagramPacket(byte[] buf,
int offset,
int length,
SocketAddress address) | Создаёт пакет данных для отправки пакетов длиной |
DatagramPacket(byte[] buf,
int length,
InetAddress address,
int port) | Создаёт пакет данных для отправки пакетов длиной |
DatagramPacket(byte[] buf,
int length,
SocketAddress address) | Создаёт пакет данных для отправки пакетов длиной |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
InetAddress | getAddress() | Возвращает IP-адрес компьютера, которому отправляется данный пакет данных или с которого он был получен. |
byte[] | getData() | Возвращает буфер данных. |
int | getLength() | Возвращает длину данных для отправки или длину полученных данных. |
int | getOffset() | Возвращает смещение данных для отправки или смещение полученных данных. |
int | getPort() | Возвращает номер порта на удалённом хосте, которому отправляется данный пакет данных или с которого он был получен. |
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- количество байтов для чтения. - С момента:
- 1.2
DatagramPacket
public DatagramPacket(byte[] buf,
int length) Создаёт DatagramPacket для получения пакетов длиной length.
Аргумент length должен быть меньше или равен buf.length.
- Параметры:
-
buf- буфер для хранения входящего дейтаграммы. -
length- количество байтов для чтения.
DatagramPacket
public DatagramPacket(byte[] buf,
int offset,
int length,
InetAddress address,
int port) Создаёт дейтаграмму для отправки пакетов длиной length со смещением ioffset на указанный номер порта на указанный хост. Аргумент length должен быть меньше или равен buf.length.
- Параметры:
-
buf- данные пакета. -
offset- смещение данных пакета. -
length- длина данных пакета. -
address- адрес назначения. -
port- номер порта назначения. - С момента:
- 1.2
- См. также:
InetAddress
DatagramPacket
public DatagramPacket(byte[] buf,
int offset,
int length,
SocketAddress address) Создаёт дейтаграмму для отправки пакетов длиной length со смещением ioffset на указанный номер порта на указанный хост. Аргумент length должен быть меньше или равен buf.length.
- Параметры:
-
buf- данные пакета. -
offset- смещение данных пакета. -
length- длина данных пакета. -
address- адрес сокета назначения. - Исключения:
-
IllegalArgumentException- если тип адреса не поддерживается - С момента:
- 1.4
- См. также:
InetAddress
DatagramPacket
public DatagramPacket(byte[] buf,
int length,
InetAddress address,
int port) Создаёт дейтаграмму для отправки пакетов длиной length на указанный номер порта на указанный хост. Аргумент length должен быть меньше или равен buf.length.
- Параметры:
-
buf- данные пакета. -
length- длина пакета. -
address- адрес назначения. -
port- номер порта назначения. - См. также:
InetAddress
DatagramPacket
public DatagramPacket(byte[] buf,
int length,
SocketAddress address) Создаёт дейтаграмму для отправки пакетов длиной length на указанный номер порта на указанный хост. Аргумент length должен быть меньше или равен buf.length.
- Параметры:
-
buf- данные пакета. -
length- длина пакета. -
address- адрес назначения. - Исключения:
-
IllegalArgumentException- если тип адреса не поддерживается - С момента:
- 1.4
- См. также:
InetAddress
Методы
getAddress
public InetAddress getAddress()
Возвращает IP-адрес машины, на которую отправляется эта дейтаграмма или с которой была получена дейтаграмма.
- Возвращает:
- IP-адрес машины, на которую отправляется эта дейтаграмма или с которой была получена дейтаграмма.
- См. также:
-
InetAddress,setAddress(java.net.InetAddress)
getPort
public int getPort()
Возвращает номер порта на удалённом хосте, на который отправляется эта дейтаграмма или с которого была получена дейтаграмма.
- Возвращает:
- номер порта на удалённом хосте, на который отправляется эта дейтаграмма или с которого была получена дейтаграмма.
- См. также:
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- длина данных и/или длина буфера, используемого для приёма данных - Исключения:
-
NullPointerException- если аргумент равен null - С момента:
- 1.2
- См. также:
-
getData(),getOffset(),getLength()
setAddress
public void setAddress(InetAddress iaddr)
Устанавливает IP-адрес машины, на которую отправляется эта дейтаграмма.
- Параметры:
-
iaddr-InetAddress - С момента:
- 1.1
- См. также:
getAddress()
setPort
public void setPort(int iport)
Устанавливает номер порта на удалённом хосте, на который отправляется эта дейтаграмма.
- Параметры:
-
iport- номер порта - С момента:
- 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-адрес + номер порта) удалённого хоста, на который отправляется или с которого получен этот пакет.
- Возвращает:
SocketAddress- С момента:
- 1.4
- См. также:
setSocketAddress(java.net.SocketAddress)
setData
public void setData(byte[] buf)
Устанавливает буфер данных для этого пакета. Смещение этого DatagramPacket установлено в 0, а длина установлена в длину buf.
- Параметры:
-
buf- буфер для установки для этого пакета. - Исключения:
-
NullPointerException- если аргумент равен null. - С момента:
- 1.1
- См. также:
-
getLength(),getData()
setLength
public void setLength(int length)
Устанавливает длину для этого пакета. Длина пакета — это количество байтов из буфера данных пакета, которые будут отправлены, или количество байтов буфера данных пакета, которые будут использованы для приёма данных. Длина должна быть меньше или равна смещению плюс длине буфера пакета.
- Параметры:
-
length- длина для установки для этого пакета. - Исключения:
-
IllegalArgumentException- если длина отрицательная или если длина больше длины буфера данных пакета. - С момента:
- 1.1
- См. также:
-
getLength(),setData(byte[], int, int)
© 1993, 2020, 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/11/docs/api/java.base/java/net/DatagramPacket.html