Spec-Zone.ru › OpenJDK 27

Класс 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()
Возвращает копию фабрики сокетов, используемой по умолчанию в данной среде.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли другой объект этому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удален в будущей версии.
Финализация устарела и может быть удалена в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

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

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
Создает сокет и подключает его к указанному удаленному узлу по указанному удаленному порту. Для этого сокета задаются параметры сокета, настроенные для данной фабрики.
Параметры:
host - имя узла сервера, к которому нужно подключиться, или null для адреса обратной петли.
port - порт сервера
Возвращает:
Socket
Вызывает исключение:
IOException - если при создании сокета возникает ошибка ввода-вывода
UnknownHostException - если узел неизвестен
IllegalArgumentException - если значение параметра port находится за пределами допустимого диапазона номеров портов от 0 до 65535 включительно.
См. также:
  • Socket(String, int)

createSocket

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

createSocket

public abstract Socket createSocket(InetAddress host, int port) throws IOException
Создает сокет и подключает его к указанному номеру порта по указанному адресу. Для этого сокета задаются параметры сокета, настроенные для данной фабрики.
Параметры:
host - узел сервера
port - порт сервера
Возвращает:
Socket
Вызывает исключение:
IOException - если при создании сокета возникает ошибка ввода-вывода
IllegalArgumentException - если значение параметра port находится за пределами допустимого диапазона номеров портов от 0 до 65535 включительно.
NullPointerException - если host имеет значение null.
См. также:
  • Socket(java.net.InetAddress, int)

createSocket

public abstract Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort) throws IOException
Создает сокет и подключает его к указанному удаленному адресу на указанном удаленном порту. Сокет также будет привязан к указанным локальному адресу и порту. Для сокета задаются параметры сокета, настроенные для данной фабрики.
Параметры:
address - сетевой адрес сервера
port - порт сервера
localAddress - сетевой адрес клиента
localPort - порт клиента
Возвращает:
Socket
Вызывает исключение:
IOException - если при создании сокета возникает ошибка ввода-вывода
IllegalArgumentException - если значение параметра port или localPort находится за пределами допустимого диапазона номеров портов от 0 до 65535 включительно.
NullPointerException - если address имеет значение null.
См. также:
  • Socket(java.net.InetAddress, int, java.net.InetAddress, int)

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и правилами распространения документации.

© 1993, 2025, 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