1.由于可读状态是在对方写入数据后或socket关闭时才能出现,因此如果客户端和服务端都停留在read时,如果没有任何一方,向对方写入数据,这将会产生一个死锁. 2.此外,在本地接收操作发起之前,很可能接收缓冲区中已经有数据了,这是一种异步.不要误以为,本地调用接收操作后,对方才会发送数据,实际数据何时到达,本地不能做出任何假设. 3. Java提供了便捷的网络编程模式,尤其在套接字中,直接提供了与网络进行沟通的输入和输出流,用户对网络的操作就如同对文件操作一样简便.在客户端与服务端建立Sock