Spec-Zone.ru › OpenJDK 8

Класс DatagramSocketImpl

  • java.lang.Object
    • java.net.DatagramSocketImpl
Все реализуемые интерфейсы:
SocketOptions

public abstract class DatagramSocketImpl
extends Object
implements SocketOptions

Базовый абстрактный класс реализации сокетов для работы с датаграммами и мультикастом.

С момента:
JDK1.1

Поля

Модификатор и тип Поле и описание
protected FileDescriptor fd

Объект дескриптора файла.

protected int localPort

Номер локального порта.

Поля, унаследованные от интерфейса java.net.SocketOptions

IP_MULTICAST_IF, IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS, SO_BINDADDR, SO_BROADCAST, SO_KEEPALIVE, SO_LINGER, SO_OOBINLINE, SO_RCVBUF, SO_REUSEADDR, SO_SNDBUF, SO_TIMEOUT, TCP_NODELAY

Конструкторы

Конструктор и описание
DatagramSocketImpl()

Методы

Модификатор и тип Метод и описание
protected abstract void bind(int lport, InetAddress laddr)

Связывает сокет для работы с датаграммами с локальным портом и адресом.

protected abstract void close()

Закрывает сокет.

protected void connect(InetAddress address, int port)

Подключает сокет для работы с датаграммами к удалённому пункту назначения.

protected abstract void create()

Создаёт сокет для работы с датаграммами.

protected void disconnect()

Отключает сокет для работы с датаграммами от удалённого пункта назначения.

protected FileDescriptor getFileDescriptor()

Получает дескриптор файла сокета для работы с датаграммами.

protected int getLocalPort()

Получает локальный порт.

protected abstract int getTimeToLive()

Получение опции TTL (time-to-live).

protected abstract byte getTTL()

Устарело.

используйте getTimeToLive вместо.

protected abstract void join(InetAddress inetaddr)

Подключается к группе мультикаста.

protected abstract void joinGroup(SocketAddress mcastaddr, NetworkInterface netIf)

Подключается к группе мультикаста.

protected abstract void leave(InetAddress inetaddr)

Выходит из группы мультикаста.

protected abstract void leaveGroup(SocketAddress mcastaddr, NetworkInterface netIf)

Выходит из группы мультикаста.

protected abstract int peek(InetAddress i)

Просмотр пакета для определения отправителя.

protected abstract int peekData(DatagramPacket p)

Просмотр пакета для определения отправителя.

protected abstract void receive(DatagramPacket p)

Приём пакета датаграммы.

protected abstract void send(DatagramPacket p)

Отправка пакета датаграммы.

protected abstract void setTimeToLive(int ttl)

Устанавливает опцию TTL (time-to-live).

protected abstract void setTTL(byte ttl)

Устарело.

используйте setTimeToLive вместо.

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

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

Методы, унаследованные от интерфейса java.net.SocketOptions

getOption, setOption

Поля

localPort

protected int localPort

Номер локального порта.

fd

protected FileDescriptor fd

Объект дескриптора файла.

Конструкторы

DatagramSocketImpl

public DatagramSocketImpl()

Методы

create

protected abstract void create()
                        throws SocketException

Создаёт сокет для работы с датаграммами.

Исключение:
SocketException - если произошла ошибка в базовом протоколе, например, ошибка TCP.

bind

protected abstract void bind(int lport,
                             InetAddress laddr)
                      throws SocketException

Связывает сокет для работы с датаграммами с локальным портом и адресом.

Параметры:
lport - локальный порт
laddr - локальный адрес
Исключение:
SocketException - если произошла ошибка в базовом протоколе, например, ошибка TCP.

send

protected abstract void send(DatagramPacket p)
                      throws IOException

Отправляет датаграмму. Датаграмма содержит данные и адрес назначения.

Параметры:
p - датаграмма, подлежащая отправке.
Исключение:
IOException - если при отправке датаграммы произошла ошибка ввода-вывода.
PortUnreachableException - может быть выброшено, если сокет подключён к недоступному в данный момент получателю. Обратите внимание, нет гарантии, что исключение будет выброшено.

connect

protected void connect(InetAddress address,
                       int port)
                throws SocketException

Подключает сокет для работы с датаграммами к удалённому получателю. Это связывает удалённый адрес с локальным сокетом, так что датаграммы могут отправляться только этому получателю и приниматься только от него. Это может быть переопределено для вызова системного подключения.

Если удалённый получатель, к которому подключён сокет, не существует или недоступен, и если для этого адреса получено сообщение ICMP об недоступности получателя, то последующий вызов send или receive может выбросить исключение PortUnreachableException. Обратите внимание, нет гарантии, что исключение будет выброшено.

Параметры:
address - удалённый InetAddress для подключения
port - номер удалённого порта
Исключение:
SocketException - может быть выброшено, если сокет не может быть подключён к удалённому получателю
С момента:
1.4

disconnect

protected void disconnect()

Отключает сокет для работы с датаграммами от удалённого получателя.

С момента:
1.4

peek

protected abstract int peek(InetAddress i)
                     throws IOException

Просмотреть пакет, чтобы узнать, от кого он. Обновляет указанный InetAddress до адреса, с которого пришёл пакет.

Параметры:
i - объект InetAddress
Возвращает:
номер порта, с которого пришёл пакет.
Исключение:
IOException - если произошла ошибка ввода-вывода
PortUnreachableException - может быть выброшено, если сокет подключён к недоступному в данный момент получателю. Обратите внимание, нет гарантии, что исключение будет выброшено.

peekData

protected abstract int peekData(DatagramPacket p)
                         throws IOException

Просмотреть пакет, чтобы узнать, от кого он. Данные копируются в указанный DatagramPacket . Данные возвращаются, но не потребляются, так что последующая операция peekData/receive увидит те же данные.

Параметры:
p - полученный пакет.
Возвращает:
номер порта, с которого пришёл пакет.
Исключение:
IOException - если произошла ошибка ввода-вывода
PortUnreachableException - может быть выброшено, если сокет подключён к недоступному в данный момент получателю. Обратите внимание, нет гарантии, что исключение будет выброшено.
С момента:
1.4

receive

protected abstract void receive(DatagramPacket p)
                         throws IOException

Принимает датаграмму.

Параметры:
p - полученный пакет.
Исключение:
IOException - если при приёме датаграммы произошла ошибка ввода-вывода.
PortUnreachableException - может быть выброшено, если сокет подключён к недоступному в данный момент получателю. Обратите внимание, нет гарантии, что исключение будет выброшено.

setTTL

@Deprecated
protected abstract void setTTL(byte ttl)
                                    throws IOException

Устарело. Используйте setTimeToLive вместо этого.

Устанавливает параметр TTL (время жизни).

Параметры:
ttl - байт, определяющий значение TTL
Исключение:
IOException - если при установке параметра time-to-live произошла ошибка ввода-вывода.
См. также:
getTTL()

getTTL

@Deprecated
protected abstract byte getTTL()
                                    throws IOException

Устарело. Используйте getTimeToLive вместо этого.

Получает параметр TTL (время жизни).

Возвращает:
байт, представляющий значение TTL
Исключение:
IOException - если при получении параметра time-to-live произошла ошибка ввода-вывода
См. также:
setTTL(byte)

setTimeToLive

protected abstract void setTimeToLive(int ttl)
                               throws IOException

Устанавливает параметр TTL (время жизни).

Параметры:
ttl - целое число, определяющее значение времени жизни
Исключение:
IOException - если при установке параметра time-to-live произошла ошибка ввода-вывода.
См. также:
getTimeToLive()

getTimeToLive

protected abstract int getTimeToLive()
                              throws IOException

Получает параметр TTL (время жизни).

Возвращает:
целое число, представляющее значение времени жизни
Исключение:
IOException - если при получении параметра time-to-live произошла ошибка ввода-вывода
См. также:
setTimeToLive(int)

join

protected abstract void join(InetAddress inetaddr)
                      throws IOException

Присоединиться к многоадресной группе.

Параметры:
inetaddr - многоадресный адрес для присоединения.
Исключение:
IOException - если при присоединении к многоадресной группе произошла ошибка ввода-вывода.

leave

protected abstract void leave(InetAddress inetaddr)
                       throws IOException

Выйти из многоадресной группы.

Параметры:
inetaddr - многоадресный адрес для выхода.
Исключение:
IOException - если при выходе из многоадресной группы произошла ошибка ввода-вывода.

joinGroup

protected abstract void joinGroup(SocketAddress mcastaddr,
                                  NetworkInterface netIf)
                           throws IOException

Присоединиться к многоадресной группе.

Параметры:
mcastaddr - адрес для присоединения.
netIf - указывает локальный интерфейс для приема многоадресных датаграмм
Исключение:
IOException - если при присоединении к многоадресной группе произошла ошибка ввода-вывода
С момента:
1.4

leaveGroup

protected abstract void leaveGroup(SocketAddress mcastaddr,
                                   NetworkInterface netIf)
                            throws IOException

Выйти из многоадресной группы.

Параметры:
mcastaddr - адрес для выхода.
netIf - указанный локальный интерфейс для выхода из группы
Исключение:
IOException - если при выходе из многоадресной группы произошла ошибка ввода-вывода
С момента:
1.4

close

protected abstract void close()

Закрыть сокет.

getLocalPort

protected int getLocalPort()

Получает локальный порт.

Возвращает:
целое число, представляющее значение локального порта

getFileDescriptor

protected FileDescriptor getFileDescriptor()

Получает дескриптор файла сокета для работы с датаграммами.

Возвращает:
объект, представляющий дескриптор файла сокета для работы с датаграммами

© 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.

Spec-Zone.ru

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