流程说明:
<1>服务端创建一个指定端口号的ServerSocket对象,调用accept()方法,等待接受客户端的连接请求(等待期间当前进程处于阻塞状态 );
<2>客户端创建一个Socket对象,指定服务点主机的IP地址(或域名)和端口,发出TCP连接请求;
<3>服务端接受到客户端的连接请求,进程由阻塞态变为运行态,此时:建立一条TCP链接,accept()方法返回一个Socket对象,通过服务端的Socket对象和客户端的Socket对象实现实时数据通信;和客户端
<4>服务端和客户端分别通过Socket对象创建字节输入流和字节输出流,通过字节输入流获取对方发来的数据,字节输出流向对方发送数据;
<5>当一方决定结束通信时,向对方发送结束信息;另一方接受到接受信息后,双方分别关闭各自的TCP连接;
<6>ServerSocket对象停止等待客户端的连接请求。