Класс InetSocketAddress
- java.lang.Object
-
- java.net.SocketAddress
-
- java.net.InetSocketAddress
- Все реализуемые интерфейсы:
- Serializable
public class InetSocketAddress extends SocketAddress
Этот класс реализует IP-адрес сокета (IP-адрес + номер порта). Он также может представлять пару (имя хоста + номер порта), в этом случае будет произведена попытка разрешить имя хоста. Если разрешение не удастся, адрес считается нерасрешённым, но его всё равно можно использовать в некоторых ситуациях, например, при подключении через прокси.
Он предоставляет неизменяемый объект, используемый сокетами для привязки, подключения или в качестве возвращаемых значений.
Подстановка — это специальный локальный IP-адрес. Обычно он означает «любой» и может использоваться только для bind операций.
- С тех пор:
- 1.4
- См. также:
-
Socket,ServerSocket, Форматированный вывод
Конструкторы
| Конструктор и описание |
|---|
InetSocketAddress(InetAddress addr,
int port) Создаёт адрес сокета из IP-адреса и номера порта. |
InetSocketAddress(int port) Создаёт адрес сокета, где IP-адрес — адрес подстановки, а номер порта — заданное значение. |
InetSocketAddress(String hostname,
int port) Создаёт адрес сокета из имени хоста и номера порта. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
static InetSocketAddress |
createUnresolved(String host,
int port) Создаёт неразрешённый адрес сокета из имени хоста и номера порта. |
boolean |
equals(Object obj) Сравнивает этот объект с указанным объектом. |
InetAddress |
getAddress() Получает |
String |
getHostName() Получает |
String |
getHostString() Возвращает имя хоста или строковое представление адреса, если у него нет имени хоста (он был создан с использованием литерала). |
int |
getPort() Получает номер порта. |
int |
hashCode() Возвращает хэш-код для этого адреса сокета. |
boolean |
isUnresolved() Проверяет, был ли адрес разрешён. |
String |
toString() Создаёт строковое представление этого InetSocketAddress. |
Методы, унаследованные от класса java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Подробное описание конструкторов
InetSocketAddress
public InetSocketAddress(int port)
Создаёт адрес сокета, где IP-адрес — адрес подстановки, а номер порта — заданное значение.
Действительное значение порта — от 0 до 65535. Номер порта zero позволяет системе выбрать временный порт в bind операции.
- Параметры:
-
port- Номер порта - Исключения:
-
IllegalArgumentException- если значение параметра порта находится за пределами указанного диапазона допустимых значений порта.
InetSocketAddress
public InetSocketAddress(InetAddress addr,
int port) Создаёт адрес сокета из IP-адреса и номера порта.
Действительное значение порта — от 0 до 65535. Номер порта zero позволяет системе выбрать временный порт в bind операции.
Адрес null присвоит адрес подстановки.
- Параметры:
-
addr- IP-адрес -
port- Номер порта - Исключения:
-
IllegalArgumentException- если значение параметра порта находится за пределами указанного диапазона допустимых значений порта.
InetSocketAddress
public InetSocketAddress(String hostname,
int port) Создаёт адрес сокета из имени хоста и номера порта.
Будет произведена попытка разрешить имя хоста в InetAddress. Если эта попытка не удастся, адрес будет помечен как нерасрешённый.
Если есть менеджер безопасности, его метод checkConnect вызывается с именем хоста в качестве аргумента для проверки разрешения на его разрешение. Это может привести к SecurityException.
Действительное значение порта — от 0 до 65535. Номер порта zero позволяет системе выбрать временный порт в bind операции.
- Параметры:
-
hostname- имя хоста -
port- Номер порта - Исключения:
-
IllegalArgumentException- если значение параметра порта находится вне диапазона допустимых значений порта или если параметр имени хостаnull. -
SecurityException- если менеджер безопасности присутствует и разрешение на разрешение имени хоста отказано. - См. также:
isUnresolved()
Подробное описание методов
createUnresolved
public static InetSocketAddress createUnresolved(String host,
int port) Создаёт неразрешённый адрес сокета из имени хоста и номера порта.
Не будет произведено попытки разрешить имя хоста в InetAddress. Адрес будет помечен как нерасрешённый.
Действительное значение порта — от 0 до 65535. Номер порта zero позволяет системе выбрать временный порт в bind операции.
- Параметры:
-
host- имя хоста -
port- Номер порта - Возвращает:
- a
InetSocketAddressпредставляющий неразрешённый адрес сокета - Исключения:
-
IllegalArgumentException- если значение параметра порта находится вне диапазона допустимых значений порта или если параметр имени хостаnull. - С тех пор:
- 1.5
- См. также:
isUnresolved()
getPort
public final int getPort()
Получает номер порта.
- Возвращает:
- номер порта.
getAddress
public final InetAddress getAddress()
Получает InetAddress.
- Возвращает:
- InetAdress или
nullесли он неразрешён.
getHostName
public final String getHostName()
Получает hostname. Примечание: этот метод может вызвать обратный поиск службы имен, если адрес был создан с использованием литерального IP-адреса.
- Возвращает:
- часть имени хоста адреса.
getHostString
public final String getHostString()
Возвращает имя хоста или строковое представление адреса, если у него нет имени хоста (он был создан с использованием литерала). Это даёт преимущество — не пытаться выполнить обратный поиск.
- Возвращает:
- имя хоста или строковое представление адреса.
- С тех пор:
- 1.7
isUnresolved
public final boolean isUnresolved()
Проверяет, был ли адрес разрешён.
- Возвращает:
-
trueесли имя хоста не удалось разрешить вInetAddress.
toString
public String toString()
Создаёт строковое представление этого InetSocketAddress. Эта строка создаётся путём вызова toString() для InetAddress и конкатенации номера порта (с двоеточием). Если адрес неразрешён, то часть перед двоеточием будет содержать только имя хоста.
equals
public final boolean equals(Object obj)
Сравнивает этот объект с указанным объектом. Результат true тогда и только тогда, когда аргумент не null и он представляет тот же адрес, что и этот объект.
Два экземпляра InetSocketAddress представляют один и тот же адрес, если оба InetAddress (или имена хостов, если адрес неразрешён) и номера портов равны. Если оба адреса неразрешены, то сравниваются имя хоста и номер порта. Примечание: имена хостов не чувствительны к регистру. Например, "FooBar" и "foobar" считаются равными.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- объект для сравнения. - Возвращает:
-
trueесли объекты одинаковы;falseв противном случае. - См. также:
InetAddress.equals(java.lang.Object)
hashCode
public final int hashCode()
Возвращает хэш-код для этого адреса сокета.
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого адреса сокета.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
© 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.