第1关:模拟客户端向服务端发送消息
任务描述
本关任务:编写一个客户端,向指定服务端发送消息并接收服务端返回的消息。
相关知识
网络编程和套接字
网络编程又称为套接字编程,就是编写一段程序,使得两台计算机彼此之间可以交换数据(也叫通信),在通信的两端,可分为客户端(client)和服务端(server),通信的时候,客户端和服务端会建立一个逻辑连接,而这个连接包含一个对象,这个对象就是字节流对象。客户端和服务端每进行一次数据交换,需要 4 个 IO 流对象,分别如下:
- 客户端给服务端发送数据(需要一个 OutputStream 对象);
- 服务端读取客户端发送的数据(需要一个 InputStream 对象);
- 服务端给客户端返回数据(需要一个 OutputStream 对象);
- 客户端读取服务端发送的数据(需要一个 InputStream 对象)。
在 Java 中,提供了 Score 类和 ServerSocket 类用于实现网络编程。
- Score 类:代表客户端套接字,套接字指的是两台设备之间通讯的端点(IP:端口),该类可以向服务端发出连接请求;
- ServerSocket 类:代表服务端套接字,相当于开启一个服务,等待客户端的连接。
Score 类
Score 类代表客户端套接字,套接字指的是两台设备之间通讯的端点(IP:端口),该类可以向服务端发出连接请求。
Score 类的构造方法
下表是它的常用构造方法:
构造方 |
---|