概述
提供一个客户端的socket(套接字)。
构造方法
- public Socket() 创建一个未连接的socket。
- public Socket (Proxy proxy) 以指定的代理类型创建一个未连接的socket。
- public Socket (String dstName, int dstPort)
- public Socket (String dstName, int dstPort, InetAddress localAddress, int localPort)
- public Socket (InetAddress dstAddress, int dstPort)
- public Socket (InetAddress dstAddress, int dstPort, InetAddress localAddress, int localPort)
创建一个以流方式传输、已连接的socket。
公共方法
public void bind (SocketAddress localAddr)
绑定socket到以localAddr指定的本地主机和端口。如果localAddr为null,socket将绑定到可用的本地主机的空闲端口。public synchronized void close ()
关闭socket。public void connect (SocketAddress remoteAddr, int timeout)
连接socket到以remoteAddr指定的远程主机和端口,尝试连接时间为timeout(可选)。连接过程中将会阻塞线程,直到连接成功或错误发生。public SocketChannel getChannel ()
返回socket的SocketChannel。实际上,这意味着socket已经被服务器端accept()或open()了。public InetAddress getInetAddress ()
返回目标主机的IP。未连接时为null。public InputStream getInputStream ()
返回一个input stream。可以用它从socket读取数据。public InetAddress getLocalAddress ()
返回socket绑定的本地IP。如果没有绑定为InetAddress.ANY。public int getLocalPort ()
返回socket绑定的本地端口。如果没有绑定为-1。public SocketAddress getLocalSocketAddress ()
返回以SocketAddress方式描述的socket绑定的本地主机和端口。如果没有绑定为null。public OutputStream getOutputStream ()
返回一个output stream。可以用它向socket输出数据。public int getPort ()
返回目标主机的端口。如果没有连接为0。public SocketAddress getRemoteSocketAddress ()
返回以SocketAddress的方式描述的目标主机和端口。如果没有连接为null。public boolean isBound ()
判断socket是否绑定。public boolean isClosed ()
判断socket是否关闭。public boolean isConnected ()
判断socket是否连接。