Java网络编程核心技术详解(视频微课版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.7 练习题

1.Java网络程序位于TCP/IP参考模型的哪一层?(单选)

a)网络互联层

b)应用层

c)传输层

d)主机-网络层

2.以下哪些协议位于传输层?(多选)

a)TCP

b)HTTP

c)SMTP

d)UDP

e)IP

3.假定一个进程已经占用TCP的80端口,它还能否占用UDP的80端口?(单选)

a)可以

b)不可以

4.一个客户进程执行以下代码:

以下哪些说法正确?(多选)

a)socket1与socket2占用不同的本地端口。

b)Socket构造方法中的port参数指定客户端占用的本地端口。

c)当Socket构造方法成功返回,就表明建立了与服务器的一个TCP连接。

d)执行第2行程序代码会抛出异常,因为一个客户进程只能与服务器建立一个TCP连接。

5.有一种协议规定:如果客户端发送一行字符串“date”,服务器端就返回当前日期信息,如果客户端发送一行字符串“exit”,服务器端就结束与客户端的通信。这种协议应该是哪一层的协议?(单选)

a)网络互联层

b)应用层

c)传输层

d)主机-网络层

6.HTTP规定在默认情况下,HTTP服务器占用的TCP端口号是什么?(单选)

a)21

b)23

c)80

d)任意一个未被占用的端口号

7.在客户/服务器通信模式中,客户程序与服务器程序的主要任务是什么?(多选)

a)客户程序在网络上找到一条到达服务器的路由。

b)客户程序发送请求,并接收服务器的响应。

c)服务器程序接收并处理客户请求,然后向客户发送响应结果。

d)客户程序和服务器程序都会保证发送的数据不会在传输途中丢失。

8.从哪里可以找到描述TCP/IP的具体文档?(单选)

a)JDK的JavaDoc文档

b)NIC的官方网站

c)国际标准化组织(ISO)的官方网站

d)RFC的官方网站

9.一个服务器进程执行以下代码:

以下哪些说法正确?(多选)

a)服务器进程占用80端口。

b)socket.getPort()方法返回服务器进程占用的本地端口号,此处返回值是80。

c)当serverSocket.accept()方法成功返回,就表明服务器进程接收到了一个客户连接请求。

d)socket.getPort()方法返回客户端套接字占用的端口。

答案:1.a 2.a,d 3.a 4.a,c 5.b 6.c 7.b,c 8.d 9.a,c,d