public abstract class SocketFactory extends Object
Socket factories are a simple way to capture a variety of policies related to the sockets being constructed, producing such sockets in a way which does not require special configuration of the code which asks for the sockets:
Factory classes are specified by environment-specific configuration mechanisms. For example, the getDefault method could return a factory that was appropriate for a particular user or applet, and a framework could use a factory customized to its own purposes.
ServerSocketFactory
Modifier | Constructor | Description |
---|---|---|
protected |
SocketFactory () |
Creates a
SocketFactory . |
Modifier and Type | Method | Description |
---|---|---|
Socket |
createSocket () |
Creates an unconnected socket.
|
abstract Socket |
createSocket (InetAddress host,
int port) |
Creates a socket and connects it to the specified port number
at the specified address.
|
abstract Socket |
createSocket (InetAddress address,
int port,
InetAddress localAddress,
int localPort) |
Creates a socket and connect it to the specified remote address
on the specified remote port.
|
abstract Socket |
createSocket (String host,
int port) |
Creates a socket and connects it to the specified remote host
at the specified remote port.
|
abstract Socket |
createSocket (String host,
int port,
InetAddress localHost,
int localPort) |
Creates a socket and connects it to the specified remote host
on the specified remote port.
|
static SocketFactory |
getDefault () |
Returns a copy of the environment's default socket factory.
|
protected SocketFactory()
SocketFactory
.public static SocketFactory getDefault()
SocketFactory
public Socket createSocket() throws IOException
IOException
- if the socket cannot be createdSocket.connect(java.net.SocketAddress)
,
Socket.connect(java.net.SocketAddress, int)
,
Socket.Socket()
public abstract Socket createSocket(String host, int port) throws IOException, UnknownHostException
If there is a security manager, its checkConnect
method is called with the host address and port
as its arguments. This could result in a SecurityException.
host
- the server host name with which to connect, or
null
for the loopback address.port
- the server portSocket
IOException
- if an I/O error occurs when creating the socketSecurityException
- if a security manager exists and its
checkConnect
method doesn't allow the operation.UnknownHostException
- if the host is not knownIllegalArgumentException
- if the port parameter is outside the
specified range of valid port values, which is between 0 and
65535, inclusive.SecurityManager.checkConnect(java.lang.String, int)
,
Socket.Socket(String, int)
public abstract Socket createSocket(String host, int port, InetAddress localHost, int localPort) throws IOException, UnknownHostException
If there is a security manager, its checkConnect
method is called with the host address and port
as its arguments. This could result in a SecurityException.
host
- the server host name with which to connect, or
null
for the loopback address.port
- the server portlocalHost
- the local address the socket is bound tolocalPort
- the local port the socket is bound toSocket
IOException
- if an I/O error occurs when creating the socketSecurityException
- if a security manager exists and its
checkConnect
method doesn't allow the operation.UnknownHostException
- if the host is not knownIllegalArgumentException
- if the port parameter or localPort
parameter is outside the specified range of valid port values,
which is between 0 and 65535, inclusive.SecurityManager.checkConnect(java.lang.String, int)
,
Socket.Socket(String, int, java.net.InetAddress, int)
public abstract Socket createSocket(InetAddress host, int port) throws IOException
If there is a security manager, its checkConnect
method is called with the host address and port
as its arguments. This could result in a SecurityException.
host
- the server hostport
- the server portSocket
IOException
- if an I/O error occurs when creating the socketSecurityException
- if a security manager exists and its
checkConnect
method doesn't allow the operation.IllegalArgumentException
- if the port parameter is outside the
specified range of valid port values, which is between 0 and
65535, inclusive.NullPointerException
- if host
is null.SecurityManager.checkConnect(java.lang.String, int)
,
Socket.Socket(java.net.InetAddress, int)
public abstract Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort) throws IOException
If there is a security manager, its checkConnect
method is called with the host address and port
as its arguments. This could result in a SecurityException.
address
- the server network addressport
- the server portlocalAddress
- the client network addresslocalPort
- the client portSocket
IOException
- if an I/O error occurs when creating the socketSecurityException
- if a security manager exists and its
checkConnect
method doesn't allow the operation.IllegalArgumentException
- if the port parameter or localPort
parameter is outside the specified range of valid port values,
which is between 0 and 65535, inclusive.NullPointerException
- if address
is null.SecurityManager.checkConnect(java.lang.String, int)
,
Socket.Socket(java.net.InetAddress, int,
java.net.InetAddress, int)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.
Scripting on this page tracks web page traffic, but does not change the content in any way.