学习的第33天。
总结(网络编程):
InetAddress类:
表示互联网协议(IP)地址对象,封装了与该IP地址相关的所有信息,并提供获取信息的常用方法。
Socket编程:
字节流的父类(抽象类):InputStream\OutputStream
步骤:
建立通信连接(会话):创建ServerSocket,指定端口号、调用accept等待客户端接入
客户端请求服务器:创建Socket,指定服务器IP+端口号,使用输出流 发送请求到服务器,使用输入流 接收响应数据到客户端。
服务端端请求服务器:使用输入流发送请求到服务器,使用输出流 发送响应数据到客户端。
习题:
C14.1: 填空:
TCP和UDP都是传输层协议,TCP是 有链接 的协议,UDP是 无链接 的协议。这两种协议中, TCP 协议更安全,而 UDP 协议传输效率更高。
C14.2: 有以下代码:Socket s = new Socket("192.168.0.100",9000);
A、B这句代码有可能产生异常、C E关闭网络连接时,应当分别关闭输入输出流,再关闭socket对象本身
C14.3: 有以下代码:ServerSocket ss = new ServerSocket(9000):
A、B、C对ss调用getInputStream和getOutputStream方法可以获得输入输出流,并于客户端通信。
C14.4: 填空:
创建TCP客户端:
1、创建一个Socket对象。
2、调用 getInputStream 方法和 getOutputStream 方法获得输入流
3、利用输入输出流,读写数据。
4、关闭socket
创建一个多线程的TCP服务器:
1、创建一个 ServerSocket 对象。
2、调用该对象的 .accept() 方法,以获取客户端的连接。该方法返回一个 Socket 对象。
3、利用返回的对象,创建一个新线程。
4、在新线程中完成读写操作。
5、在新线程中调用 客户端Socket 对象的close方法。