模块  java.base
软件包  javax.net

Class ServerSocketFactory

  • 已知直接子类:
    SSLServerSocketFactory

    public abstract class ServerSocketFactory
    extends Object
    此类创建服务器套接字。 它可能被其他工厂子类化,这些工厂创建特定类型的服务器套接字。 这为添加公共套接字级功能提供了一个通用框架。 它是套接字工厂的服务器端模拟,同样提供了一种捕获与正在构造的套接字相关的各种策略的方法。

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

    从以下版本开始:
    1.4
    另请参见:
    SocketFactory
    • 构造方法详细信息

      • ServerSocketFactory

        protected ServerSocketFactory()
        创建服务器套接字工厂。
    • 方法详细信息

      • getDefault

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

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

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

        参数
        port - 要收听的端口
        结果
        ServerSocket
        异常
        IOException - 用于网络错误
        SecurityException - 如果存在安全管理器且其 checkListen方法不允许该操作。
        IllegalArgumentException - 如果port参数超出指定的有效端口值范围,则介于0和65535之间(包括0和65535)。
        另请参见:
        SecurityManager.checkListen(int)ServerSocket(int)
      • createServerSocket

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

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

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

        参数
        port - 收听的端口
        backlog - 排队的连接数
        结果
        ServerSocket
        异常
        IOException - 用于网络错误
        SecurityException - 如果存在安全管理器且其 checkListen方法不允许该操作。
        IllegalArgumentException - 如果port参数超出指定的有效端口值范围,则介于0和65535之间(包括0和65535)。
        另请参见:
        SecurityManager.checkListen(int)ServerSocket(int, int)
      • createServerSocket

        public abstract ServerSocket createServerSocket​(int port,
                                                        int backlog,
                                                        InetAddress ifAddress)
                                                 throws IOException
        返回绑定到指定端口的服务器套接字,具有指定的侦听backlog和本地IP。

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

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

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

        参数
        port - 要收听的端口
        backlog - 排队的连接数
        ifAddress - 要使用的网络接口地址
        结果
        ServerSocket
        异常
        IOException - 用于网络错误
        SecurityException - 如果存在安全管理器且其 checkListen方法不允许该操作。
        IllegalArgumentException - 如果port参数超出指定的有效端口值范围,则介于0和65535之间(包括0和65535)。
        另请参见:
        SecurityManager.checkListen(int)ServerSocket(int, int, java.net.InetAddress)