所有类


java.net
类 SocketImpl

java.lang.Object
  继承者 java.net.SocketImpl
所有已实现的接口:
SocketOptions

public abstract class SocketImpl
   
   
   
   
   
extends Object
implements SocketOptions

抽象类 SocketImpl 是实际实现套接字的所有类的通用超类。创建客户端和服务器套接字都可以使用它。

“普通”套接字严格按描述实现这些方法,无需尝试通过防火墙或代理。

从以下版本开始:
JDK1.0

字段摘要
protected  InetAddressaddress
          此套接字的远程端点的 IP 地址。
protected  FileDescriptorfd
          此套接字的文件描述符对象。
protected  intlocalport
          此套接字连接到的本地端口号。
protected  intport
          此套接字连接到的远程主机的端口号。
 
从接口 java.net.SocketOptions 继承的字段
IP_MULTICAST_IF, IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS, SO_BINDADDR, SO_BROADCAST, SO_KEEPALIVE, SO_LINGER, SO_OOBINLINE, SO_RCVBUF, SO_REUSEADDR, SO_SNDBUF, SO_TIMEOUT, TCP_NODELAY
 
构造方法摘要
SocketImpl()
           
 
方法摘要
protected abstract  voidaccept(SocketImpl s)
          接受连接。
protected abstract  intavailable()
          返回可以不受阻塞地从此套接字中读取的字节数。
protected abstract  voidbind(InetAddress host, int port)
          将此套接字绑定到指定的本地 IP 地址和端口号。
protected abstract  voidclose()
          关闭此套接字。
protected abstract  voidconnect(InetAddress address, int port)
          将此套接字连接到指定主机上的指定端口号。
protected abstract  voidconnect(SocketAddress address, int timeout)
          将此套接字连接到指定主机上的指定端口号。
protected abstract  voidconnect(String host, int port)
          将此套接字连接到指定主机上的指定端口。
protected abstract  voidcreate(boolean stream)
          创建一个流或数据报套接字。
protected  FileDescriptorgetFileDescriptor()
          返回此套接字的 fd 字段的值。
protected  InetAddressgetInetAddress()
          返回此套接字的 address 字段的值。
protected abstract  InputStreamgetInputStream()
          返回此套接字的输入流。
protected  intgetLocalPort()
          返回此套接字的 localport 字段的值。
protected abstract  OutputStreamgetOutputStream()
          返回此套接字的输出流。
protected  intgetPort()
          返回此套接字的 port 字段的值。
protected abstract  voidlisten(int backlog)
          将传入连接指示(连接请求)的最大队列长度设置为 count 参数。
protected abstract  voidsendUrgentData(int data)
          在套接字上发送一个紧急数据字节。
protected  voidsetPerformancePreferences(int connectionTime, int latency, int bandwidth)
          设置此套接字的性能偏好 (performance preferences)。
protected  voidshutdownInput()
          将此套接字的输入流置于“流的末尾”。
protected  voidshutdownOutput()
          禁用此套接字的输出流。
protected  booleansupportsUrgentData()
          返回此 SocketImpl 是否支持发送紧急数据。
 StringtoString()
          以 String 的形式返回此套接字的地址和端口。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
从接口 java.net.SocketOptions 继承的方法
getOption, setOption
 

字段详细信息

fd

protected FileDescriptor fd
此套接字的文件描述符对象。


address

protected InetAddress address
此套接字的远程端点的 IP 地址。


port

protected int port
此套接字连接到的远程主机的端口号。


localport

protected int localport
此套接字连接到的本地端口号。

构造方法详细信息

SocketImpl

public SocketImpl()
方法详细信息

create

protected abstract void create(boolean stream)
                        throws IOException
创建一个流或数据报套接字。

参数:
stream - 如果为 true,则创建流套接字;否则创建数据报套接字。
抛出:
IOException - 如果创建套接字时发生 I/O 错误。

connect

protected abstract void connect(String host,
                                int port)
                         throws IOException
将此套接字连接到指定主机上的指定端口。

参数:
host - 远程主机名。
port - 端口号。
抛出:
IOException - 如果连接到远程主机时发生 I/O 错误。

connect

protected abstract void connect(InetAddress address,
                                int port)
                         throws IOException
将此套接字连接到指定主机上的指定端口号。

参数:
address - 远程主机的 IP 地址。
port - 端口号。
抛出:
IOException - 如果尝试连接时发生 I/O 错误。

connect

protected abstract void connect(SocketAddress address,
                                int timeout)
                         throws IOException
将此套接字连接到指定主机上的指定端口号。超时值零被解释为无限超时。在建立连接或者发生错误之前,连接一直处于阻塞状态。

参数:
address - 远程主机的 Socket 地址。
timeout - 以毫秒为单位的超时值;或者为零,表示没有超时值。
抛出:
IOException - 如果尝试连接时发生 I/O 错误。
从以下版本开始:
1.4