当Socket的构造方法请求连接服务器时,可能会抛出下面的异常。
1、UnknownHostException - 如果无法识别主机的名字或ip时,就会抛出此异常。
2、ConnectException - 如果没有服务器进程监听指定的端口时,或是服务器拒绝连接时或服务器没有启动,就会抛出此异常。
说明一下服务器拒绝连接时情况,如ServerSocket(Int port, int backlog)构造函数中的第二个参数backlog,设定服务器请求列队的长度,如果队列中请求已满的话,服务器就会拒绝其余的连接请求。
3、SocketTimeoutException - 如果等待连接超时,就会抛出此异常。
4、BindException - 如果无法把Socket对象与本地IP地址或端口绑定时,就会抛出此异常。
以上四种都是IOException直接或是间接的子类,如下图所示:
新闻热点
疑难解答