Module java.base
Package javax.net

Class ServerSocketFactory

java.lang.Object
javax.net.ServerSocketFactory
直接已知的子类:
SSLServerSocketFactory

public abstract class ServerSocketFactory extends Object
此类创建服务器套接字。其他工厂可以通过继承此类来创建特定类型的服务器套接字。这为添加公共套接字级功能提供了一个通用框架。它是套接字工厂的服务器端类比,类似地提供了一种捕获与正在构建的套接字相关的各种策略的方法。

与套接字工厂类似,服务器套接字工厂实例具有用于创建套接字的方法。还有一个特定于环境的默认服务器套接字工厂;框架通常会使用自定义工厂。

自 JDK 版本:
1.4
参见:
  • Constructor Details

    • ServerSocketFactory

      protected ServerSocketFactory()
      创建一个服务器套接字工厂。
  • Method Details

    • getDefault

      public static ServerSocketFactory getDefault()
      返回环境的默认套接字工厂的副本。
      返回:
      ServerSocketFactory
    • createServerSocket

      public ServerSocket createServerSocket() throws IOException
      返回一个未绑定的服务器套接字。该套接字配置了此工厂提供的套接字选项(例如接受超时)。
      返回:
      未绑定的套接字
      抛出:
      IOException - 如果无法创建套接字
      参见:
    • createServerSocket

      public abstract ServerSocket createServerSocket(int port) throws IOException
      返回绑定到指定端口的服务器套接字。该套接字配置了此工厂提供的套接字选项(例如接受超时)。

      如果存在安全管理器,则将使用 port 参数调用其 checkListen 方法,以确保允许该操作。这可能导致 SecurityException。

      参数:
      port - 要监听的端口
      返回:
      ServerSocket
      抛出:
      IOException - 用于网络错误
      SecurityException - 如果存在安全管理器且其 checkListen 方法不允许该操作。
      IllegalArgumentException - 如果端口参数超出有效端口值范围,即介于 0 和 65535 之间(包括边界值)。
      参见:
    • createServerSocket

      public abstract ServerSocket createServerSocket(int port, int backlog) throws IOException
      返回绑定到指定端口的服务器套接字,并使用指定的连接排队。该套接字配置了此工厂提供的套接字选项(例如接受超时)。

      backlog 参数必须是大于 0 的正值。如果传递的值等于或小于 0,则将假定使用默认值。

      如果存在安全管理器,则将使用 port 参数调用其 checkListen 方法,以确保允许该操作。这可能导致 SecurityException。

      参数:
      port - 要监听的端口
      backlog - 排队的连接数
      返回:
      ServerSocket
      抛出:
      IOException - 用于网络错误
      SecurityException - 如果存在安全管理器且其 checkListen 方法不允许该操作。
      IllegalArgumentException - 如果端口参数超出有效端口值范围,即介于 0 和 65535 之间(包括边界值)。
      参见:
    • createServerSocket

      public abstract ServerSocket createServerSocket(int port, int backlog, InetAddress ifAddress) throws IOException
      返回绑定到指定端口的服务器套接字,并使用指定的连接排队和本地 IP。

      ifAddress 参数可用于多宿主主机上的 ServerSocket,该套接字仅接受连接请求到其地址之一。如果 ifAddress 为 null,则将接受所有本地地址的连接。该套接字配置了此工厂提供的套接字选项(例如接受超时)。

      backlog 参数必须是大于 0 的正值。如果传递的值等于或小于 0,则将假定使用默认值。

      如果存在安全管理器,则将使用 port 参数调用其 checkListen 方法,以确保允许该操作。这可能导致 SecurityException。

      参数:
      port - 要监听的端口
      backlog - 排队的连接数
      ifAddress - 要使用的网络接口地址
      返回:
      ServerSocket
      抛出:
      IOException - 用于网络错误
      SecurityException - 如果存在安全管理器且其 checkListen 方法不允许该操作。
      IllegalArgumentException - 如果端口参数超出有效端口值范围,即介于 0 和 65535 之间(包括边界值)。
      参见: