一、TCP通信概述
TCP通信能实现两台计算机之间的数据交互,通信的两端,要严格区分客户端与服务端。(客户端和服务端其实都是两台计算机,客户端是配置比较低的计算机,服务端是配置比较高的计算机)。
两端通信时步骤:
1.服务端程序,需要事先启动,等待客户端的连接。
2.客户端主动连接服务端,连接成功才能通信。服务端不可以主动连接客户端。
在Java中,提供了两个类用于事先TCP通信程序:第一个,客户端java.net.Socket类表示。创建socket对象,向服务端发出连接请求,服务端响应请求,两者建立连接开始通信。第二个,服务端,java.net.SeverSocket对象,相当于开启一个服务,并等待客户端连接。

服务端必须明确两件事情:第一个事情,多个客户端同时进行交互,服务器必须明确和那个客户端进行交互。在服务器端有一个方法叫accept 可以获取到请求的客户端Socket对象。第二个事情: 多个客户端同时和服务器进行交互,就需要使用多个IO流对象。 其实服务器没有IO流的,服务器可以获取到请求的客户端对象Socket使用每个客户端Socket中提供的IO流和客户端进行交互。
二、TCP通信的客户端代码实现

三、TCP通信端服务器代码实现


