Spec-Zone.ru › OpenJDK 21

Класс SocketFactory

java.lang.Object
javax.net.SocketFactory
Прямые известные подклассы:
SSLSocketFactory
public abstract class SocketFactory extends Object
Этот класс создаёт сокеты. Он может быть унаследован другими фабриками, которые создают конкретные подклассы сокетов, обеспечивая тем самым общую структуру для добавления общедоступных функций уровня сокетов.

Фабрики сокетов — простой способ захватить различные политики, связанные с создаваемыми сокетами, создавая их таким образом, что не требуется специальной конфигурации кода, запрашивающего сокеты:

  • Благодаря полиморфизму как фабрик, так и сокетов, разные типы сокетов могут быть использованы одним и тем же кодом приложения, просто передавая ему разные типы фабрик.
  • Сами фабрики могут быть настроены с параметрами, используемыми при создании сокетов. Например, фабрики могут быть настроены так, чтобы возвращать сокеты с различными тайм-аутами сети или параметрами безопасности, уже сконфигурированными.
  • Сокеты, возвращаемые приложению, могут быть подклассами java.net.Socket, чтобы они могли напрямую предоставлять новые API для функций, таких как сжатие, безопасность, маркировка записей, сбор статистики или туннелирование через брандмауэр.

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

С:
1.4
См. также:
  • ServerSocketFactory

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

SocketFactory()
Модификатор Конструктор Описание
protected
Создаёт SocketFactory.

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

Модификатор и тип Метод Описание
Socket createSocket()
Создаёт несвязанный сокет.
abstract Socket createSocket(String host, int port)
Создаёт сокет и подключает его к указанному удалённому хосту на указанном удалённом порту.
abstract Socket createSocket(String host, int port, InetAddress localHost, int localPort)
Создаёт сокет и подключает его к указанному удалённому хосту на указанном удалённом порту.
abstract Socket createSocket(InetAddress host, int port)
Создаёт сокет и подключает его к указанному номеру порта на указанном адресе.
abstract Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort)
Создаёт сокет и подключает его к указанному удалённому адресу на указанном удалённом порту.
static SocketFactory getDefault()
Возвращает копию значения по умолчанию для фабрики сокетов в текущей среде.

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

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

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

SocketFactory

protected SocketFactory()
Создаёт SocketFactory.

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

getDefault

public static SocketFactory getDefault()
Возвращает копию стандартного сокет-фабрики среды.
Возвращает:
стандартный SocketFactory

createSocket

public Socket createSocket() throws IOException
Создаёт неподключённый сокет.
Возвращает:
неподключённый сокет
Исключение:
IOException - если сокет не может быть создан
См. также:
  • Socket.connect(java.net.SocketAddress)
  • Socket.connect(java.net.SocketAddress, int)
  • Socket()

createSocket

public abstract Socket createSocket(String host, int port) throws IOException, UnknownHostException
Создаёт сокет и подключает его к указанному удалённому хосту на указанном удалённом порту. Этот сокет настраивается с использованием параметров сокета, установленных для данного фабрики.

Если существует менеджер безопасности, вызывается его метод checkConnect с адресом хоста и port в качестве аргументов. Это может привести к SecurityException.

Параметры:
host - имя хоста сервера для подключения или null для адреса обратной связи.
port - порт сервера
Возвращает:
созданный Socket
Исключение:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkConnect не разрешает операцию.
UnknownHostException - если хост неизвестен
IllegalArgumentException - если параметр порта находится вне указанного диапазона допустимых значений портов, который находится в диапазоне от 0 до 65535 включительно.
См. также:
  • SecurityManager.checkConnect(java.lang.String, int)
  • Socket(String, int)

createSocket

public abstract Socket createSocket(String host, int port, InetAddress localHost, int localPort) throws IOException, UnknownHostException
Создаёт сокет и подключает его к указанному удалённому хосту на указанном удалённом порту. Сокет также будет привязан к указанному локальному адресу и порту. Этот сокет настраивается с использованием параметров сокета, установленных для данного фабрики.

Если существует менеджер безопасности, вызывается его метод checkConnect с адресом хоста и port в качестве аргументов. Это может привести к SecurityException.

Параметры:
host - имя хоста сервера для подключения или null для адреса обратной связи.
port - порт сервера
localHost - локальный адрес, к которому привязан сокет
localPort - локальный порт, к которому привязан сокет
Возвращает:
созданный Socket
Исключение:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkConnect не разрешает операцию.
UnknownHostException - если хост неизвестен
IllegalArgumentException - если параметр порта или localPort находится вне указанного диапазона допустимых значений портов, который находится в диапазоне от 0 до 65535 включительно.
См. также:
  • SecurityManager.checkConnect(java.lang.String, int)
  • Socket(String, int, java.net.InetAddress, int)

createSocket

public abstract Socket createSocket(InetAddress host, int port) throws IOException
Создаёт сокет и подключает его к указанному порту на указанном адресе. Этот сокет настраивается с использованием параметров сокета, установленных для данного фабрики.

Если существует менеджер безопасности, вызывается его метод checkConnect с адресом хоста и port в качестве аргументов. Это может привести к SecurityException.

Параметры:
host - хост сервера
port - порт сервера
Возвращает:
созданный Socket
Исключение:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkConnect не разрешает операцию.
IllegalArgumentException - если параметр порта находится вне указанного диапазона допустимых значений портов, который находится в диапазоне от 0 до 65535 включительно.
NullPointerException - если host равно null.
См. также:
  • SecurityManager.checkConnect(java.lang.String, int)
  • Socket(java.net.InetAddress, int)

createSocket

public abstract Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort) throws IOException
Создаёт сокет и подключает его к указанному удалённому адресу на указанном удалённом порту. Сокет также будет привязан к локальному адресу и порту. Сокет настраивается с использованием параметров сокета, установленных для данного фабрики.

Если существует менеджер безопасности, вызывается его метод checkConnect с адресом хоста и port в качестве аргументов. Это может привести к SecurityException.

Параметры:
address - сетевой адрес сервера
port - порт сервера
localAddress - сетевой адрес клиента
localPort - порт клиента
Возвращает:
созданный Socket
Исключение:
IOException - если при создании сокета произошла ошибка ввода-вывода
SecurityException - если менеджер безопасности существует и его метод checkConnect не разрешает операцию.
IllegalArgumentException - если параметр порта или localPort находится вне указанного диапазона допустимых значений портов, который находится в диапазоне от 0 до 65535 включительно.
NullPointerException - если address равно null.
См. также:
  • SecurityManager.checkConnect(java.lang.String, int)
  • Socket(java.net.InetAddress, int, java.net.InetAddress, 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/javax/net/SocketFactory.html

Spec-Zone.ru

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