站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > JavaTM 2 Platform Standard Edition 5.0 API 规范中文版

类 java.net.SocketException 的使用 (Java 2 Platform SE 5.0) - JavaTM 2 Platform Standard Edition 5.0 API 规范中文版

JavaTM 2 Platform
Standard Ed. 5.0

类 java.net.SocketException
的使用

使用 SocketException 的软件包
java.net 为实现网络应用程序提供类。 
 

java.netSocketException 的使用
 

java.netSocketException 的子类
 class BindException
          试图将套接字绑定到本地地址和端口时发生错误的情况下,抛出此异常。
 class ConnectException
          试图将套接字连接到远程地址和端口时发生错误的情况下,抛出此异常。
 class NoRouteToHostException
          试图将套接字连接到远程地址和端口时发生错误的情况下,抛出此异常。
 class PortUnreachableException
          在连接的数据报上已接收到 ICMP Port Unreachable 消息时,抛出该异常。
 

抛出 SocketExceptionjava.net 中的方法
protected abstract  void DatagramSocketImpl.bind(int lport, InetAddress laddr)
          将数据报套接字绑定到本地端口和地址。
 void DatagramSocket.bind(SocketAddress addr)
          将此 DatagramSocket 绑定到特定的地址和端口。
protected  void DatagramSocketImpl.connect(InetAddress address, int port)
          将数据报套接字连接到远程目标。
 void DatagramSocket.connect(SocketAddress addr)
          将此套接字连接到远程套接字地址(IP 地址 + 端口号)。
protected abstract  void DatagramSocketImpl.create()
          创建数据报套接字。
 boolean DatagramSocket.getBroadcast()
          检测是否启用了 SO_BROADCAST。
static NetworkInterface NetworkInterface.getByInetAddress(InetAddress addr)
          搜索绑定了指定 Internet 协议 (IP) 地址的网络接口的便捷方法。
static NetworkInterface NetworkInterface.getByName(String name)
          搜索具有指定名称的网络接口。
 InetAddress MulticastSocket.getInterface()
          检索用于多播数据包的网络接口的地址。
 boolean Socket.getKeepAlive()
          测试是否启用 SO_KEEPALIVE。
 boolean MulticastSocket.getLoopbackMode()
          获取多播数据报的本地回送的设置。
 NetworkInterface MulticastSocket.getNetworkInterface()
          获取多播网络接口集合。
static Enumeration<NetworkInterface> NetworkInterface.getNetworkInterfaces()
          返回此机器上的所有接口。
 boolean Socket.getOOBInline()
          测试是否启用 OOBINLINE。
 Object SocketOptions.getOption(int optID)
          获取选项的值。
 int Socket.getReceiveBufferSize()
          获取此 Socket 的 SO_RCVBUF 选项的值,该值是平台在 Socket 上输入时使用的缓冲区大小。
 int ServerSocket.getReceiveBufferSize()
          获取此 ServerSocket 的 SO_RCVBUF 选项的值,该值是将用于从此 ServerSocket 接受的套接字的建议缓冲区大小。
 int DatagramSocket.getReceiveBufferSize()
          获取此 DatagramSocket 的 SO_RCVBUF 选项的值,该值是平台在 DatagramSocket 上输入时使用的缓冲区大小。
 boolean Socket.getReuseAddress()
          测试是否启用 SO_REUSEADDR。
 boolean ServerSocket.getReuseAddress()
          测试是否启用 SO_REUSEADDR。
 boolean DatagramSocket.getReuseAddress()
          检测是否启用了 SO_REUSEADDR。
 int Socket.getSendBufferSize()
          获取此 Socket 的 SO_SNDBUF 选项的值,该值是平台在 Socket 上输出时使用的缓冲区大小。
 int DatagramSocket.getSendBufferSize()
          获取此 DatagramSocket 的 SO_SNDBUF 选项的值,该值是平台在 DatagramSocket 上输出时使用的缓冲区大小。
 int Socket.getSoLinger()
          返回 SO_LINGER 的设置。
 int Socket.getSoTimeout()
          返回 SO_TIMEOUT 的设置。
 int DatagramSocket.getSoTimeout()
          重新恢复 SO_TIMEOUT 的设置。
 boolean Socket.getTcpNoDelay()
          测试是否启用 TCP_NODELAY。
 int Socket.getTrafficClass()
          为从此 Socket 上发送的包获取 IP 头中的流量类别或服务类型。
 int DatagramSocket.getTrafficClass()
          为从此 DatagramSocket 上发送的包获取 IP 数据报头中的流量类别或服务类型。
 void DatagramSocket.setBroadcast(boolean on)
          启用/禁用 SO_BROADCAST。
 void MulticastSocket.setInterface(InetAddress inf)
          设置多播网络接口,供其行为将受网络接口值影响的方法使用。
 void Socket.setKeepAlive(boolean on)
          启用/禁用 SO_KEEPALIVE。
 void MulticastSocket.setLoopbackMode(boolean disable)
          启用/禁用多播数据报的本地回送。
 void MulticastSocket.setNetworkInterface(NetworkInterface netIf)
          指定在此套接字上发送的输出多播数据报的网络接口。
 void Socket.setOOBInline(boolean on)
          启用/禁用 OOBINLINE(TCP 紧急数据的接收者) 默认情况下,此选项是禁用的,即在套接字上接收的 TCP 紧急数据被悄悄丢弃。
 void SocketOptions.setOption(int optID, Object value)
          启用/禁用 optID 指定的选项。
 void Socket.setReceiveBufferSize(int size)
          将此 Socket 的 SO_RCVBUF 选项设置为指定的值。
 void ServerSocket.setReceiveBufferSize(int size)
          为从此 ServerSocket 接受的套接字的 SO_RCVBUF 选项设置默认建议值。
 void DatagramSocket.setReceiveBufferSize(int size)
          将此 DatagramSocket 的 SO_RCVBUF 选项设置为指定的值。
 void Socket.setReuseAddress(boolean on)
          启用/禁用 SO_REUSEADDR 套接字选项。
 void ServerSocket.setReuseAddress(boolean on)
          启用/禁用 SO_REUSEADDR 套接字选项。
 void DatagramSocket.setReuseAddress(boolean on)
          启用/禁用 SO_REUSEADDR 套接字选项。
 void Socket.setSendBufferSize(int size)
          将此 Socket 的 SO_SNDBUF 选项设置为指定的值。
 void DatagramSocket.setSendBufferSize(int size)
          将此 DatagramSocket 的 SO_SNDBUF 选项设置为指定的值。
 void Socket.setSoLinger(boolean on, int linger)
          启用/禁用具有指定逗留时间(以秒为单位)的 SO_LINGER。
 void Socket.setSoTimeout(int timeout)
          启用/禁用带有指定超时值的 SO_TIMEOUT,以毫秒为单位。
 void ServerSocket.setSoTimeout(int timeout)
          启用/禁用带有指定超时值的 SO_TIMEOUT,以毫秒为单位。
 void DatagramSocket.setSoTimeout(int timeout)
          启用/禁用带有指定超时值的 SO_TIMEOUT,以毫秒为单位。
 void Socket.setTcpNoDelay(boolean on)
          启用/禁用 TCP_NODELAY(启用/禁用 Nagle 算法)。
 void Socket.setTrafficClass(int tc)
          为从此 Socket 上发送的数据包在 IP 头中设置流量类别 (traffic class) 或服务类型八位组 (type-of-service octet)。
 void DatagramSocket.setTrafficClass(int tc)
          为从此 DatagramSocket 上发送的数据报在 IP 数据报头中设置流量类别 (traffic class) 或服务类型八位组 (type-of-service octet)。
 

抛出 SocketExceptionjava.net 中的构造方法
DatagramPacket(byte[] buf, int offset, int length, SocketAddress address)
          构造数据报包,用来将长度为 length 偏移量为 offset 的包发送到指定主机上的指定端口号。
DatagramPacket(byte[] buf, int length, SocketAddress address)
          构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。
DatagramSocket()
          构造数据报套接字并将其绑定到本地主机上任何可用的端口。
DatagramSocket(int port)
          创建数据报套接字并将其绑定到本地主机上的指定端口。
DatagramSocket(int port, InetAddress laddr)
          创建数据报套接字,将其绑定到指定的本地地址。
DatagramSocket(SocketAddress bindaddr)
          创建数据报套接字,将其绑定到指定的本地套接字地址。
Socket(SocketImpl impl)
          创建带有用户指定的 SocketImpl 的未连接 Socket。
 


JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策