java网络编程 测试题

马上要关闭查看了,为方便考试复习,复制到博客中。
字体有点儿小,然而我不会调字体┭┮﹏┭┮

1、 如果有以下程序片段:
BufferedReader input = new BufferedReader (new _________ );空白部分可填写_________以通过编译。
(5.0分)
A、
FileInputStream(“Account.data”)
B、
FileReader (“Main. java”)
C、
InputStreamReader (new FileReader (“Main.java”))
D、
objectReader (“Account .data”)

答案:B

2、调用Thread类的start()方法后,线程会处于( )状态。
A、
Running
B、
Runnable
C、
Wait Blocked
D、
I/O Blocked

答案:B

3、Java中可以通过实现下面__________类/接口来自定义线程类。
A、
Object
B、
Runnable
C、
Run
D、
Start

答案:B

4、下列关于Java线程的说法那个是正确的?
A、
每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。
B、
创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。
C、
Thread类属于java.util程序包。
D、
以上说法无一正确。

答案:D

5、下面关于Java线程接口描述不正确的是_____?
A、
Callable的 call() 方法可以返回值和抛出异常
B、
Callable可以返回装载有计算结果的Future对象
C、
Runnable的run()方法可以返回值和抛出异常
D、
Java线程池中submit()方法可以返回持有计算结果的Future对象

答案:C

6、Socket类的哪个方法返回Socket对象绑定的本地端口?
A、
getPort()
B、
getLocalPort()
C、
getRemotePort()
D、
不存在这样的方法,因为Socket对象绑定的本地端口对程序是透明的。

答案:B

7、以下两段程序代码是否等价?(单选)
//第一段程序
socket.shutdownInput();
socket.shutdownOutput();
//第二段程序
socket.close();
A、
等价
B、
不等价

答案:B

8、当客户端执行以下程序代码时:
Socket socket=new Socket(“angel”,80);
如果远程服务器angel不存在,会出现什么情况?
A、
构造方法抛出UnknownHostException异常。
B、
客户端一直等待连接,直到连接超时,从而抛出SocketTimeoutException。
C、
抛出BindException。
D、
构造方法返回一个Socket对象,但它不与任何服务器连接。

答案:A

9、以下哪个Socket选项来用设置Socket接收数据的等待超时时间
A、
SO_RESUSEADDR
B、
SO_TIMEOUT
C、
SO_LINGER
D、
SO_SNFBUF

答案:B

10、如果想让Socket对象关闭时,底层Socket未完成发送的数据继续发送,需要设置Socket的哪个选项
A、
SO_RESUSEADDR
B、
SO_TIMEOUT
C、
SO_LINGER
D、
SO_SNFBUF

答案:C

11、 Socket对象的SO_REUSEADDR和TCP_NODELAY选项的默认取值为:
A、
true, true
B、
false, false
C、
true, false
D、
false, true

答案:B

12、 在网络游戏编程中,为了提高用户之间交互的实时性,应该将Socket对象的以下哪个选项设为true
A、
SO_LINGER
B、
SO_REUSEADDR
C、
TCP_NODELAY
D、
SO_BROADCAST

答案:C

13、客户程序希望底层网络的IP层提供高可靠性和最小延迟传输服务,客户程序中应该如何提出这一请求?
A、
调用Socket的setPerformancePreferences()方法
B、
设置Socket的SO_SERVICE选项
C、
调用Socket的setTrafficClass()方法
D、
客户程序无法提出这种请求,必须直接配置底层网络

答案:C

14、当客户端执行以下程序代码时:
Socket socket=new Socket(“angel”,80);
如果远程服务器angel不存在,会出现什么情况?
A、
构造方法抛出UnknownHostException异常。
B、
客户端一直等待连接,直到连接超时,从而抛出SocketTimeoutException。
C、
抛出BindException。
D、
构造方法返回一个Socket对象,但它不与任何服务器连接。

答案:A

15、【多选题】
对于以下程序代码:
Socket socket=new Socket(); //第1行
SocketAddress remoteAddr1=new InetSocketAddress(“localhost”,8000); //第2行
SocketAddress remoteAddr2=new InetSocketAddress(“localhost”,8001); //第3行
socket.connect(remoteAddr1, 60000); //第4行
socket.connect(remoteAddr2, 60000); //第5行
下面哪些说法是正确的?(多选)
A、
以上程序代码可以顺利编译和运行通过。
B、
第1行程序代码创建了一个与本地匿名端口绑定的Socket对象。
C、
第1行程序代码创建的Socket对象没有与任何服务器建立连接,并且没有绑定任何本地端口。
D、
第5行程序代码会运行出错,因为一个Socket对象只允许建立一次连接。
E、
第4行程序代码使Socket对象与一个服务器建立连接,并且绑定一个本地匿名端口。

答案:CDE

16、如何判断一个ServerSocket已经与特定端口绑定,并且还没有被关闭?
(5.0分)
A、
boolean isOpen=serverSocket.isBound();
B、
boolean isOpen=serverSocket.isBound() && !serverSocket.isClosed();
C、
boolean isOpen=serverSocket.isBound() && serverSocket.isConnected();
D、
boolean isOpen=!serverSocket.isClosed();

答案:B

17、ServerSocket类中用于监听客户端连接请求的方法是:_____。
(5.0分)
A、
bind()
B、
accept()
C、
ServerSocket()
D、
getInputStream()

答案:B

18、 对于以下程序代码:
ServerSocket serverSocket=new ServerSocket(8000);
serverSocket.setReuseAddress(true);
哪个说法是正确的?
A、
以上代码运行时出错
B、
以上代码编译时出错
C、
以上代码尽管编译和运行不会出错,但对SO_REUSEADDR选项的设置无效
D、
以上说法都不正确

答案:C

19、 ServerSocket与Socket都有一个SO_TIMEOUT选项,它们的作用是否相同?
A、
相同
B、
不同

答案:B

20、关于ServerSocket构造方法的backlog参数,以下哪些说法是正确的?
A、
backlog参数用来显式设置操作系统中的连接请求队列的长度。
B、
如果没有设置backlog参数,那么连接请求队列的长度由操作系统决定。
C、
当服务器端的连接请求队列已满,客户端就无法建立与服务器的连接。
D、
如果backlog参数的值大于操作系统限定的队列的最大长度,那么backlog参数被忽略。
E、
连接请求队列直接由ServerSocket创建并管理。
F、
ServerSocket的accept()方法从连接请求队列中取出连接请求。

答案:ABCDF

21、默认情况下,SocketChannel对象处于什么模式?
A、
阻塞模式
B、
非阻塞模式

答案:A

22、在服务器程序中,线程在哪些情况可能会进入阻塞状态?
A、
线程执行Socket的getInputStream()方法获得输入流。
B、
线程执行Socket的getOutputStream()方法获得输出流。
C、
线程执行ServerSocket的accept()方法。
D、
线程从Socket的输入流读入数据。
E、
线程向Socket的输出流写一批数据

答案:CDE

23、对于以下代码:
int n=socketChannel.read(byteBuffer); //假定n>=0
byteBuffer.flip();
假定执行socketChannel.read(byteBuffer)方法前,byteBuffer的
容量、极限和位置分别为c、l和p,执行完以上代码后,byteBuffer
的容量、极限和位置分别是多少?
A、
容量为c,极限为l,位置为p+n
B、
容量为c,极限为p+n,位置为0
C、
容量为l,极限为p+n,位置为0
D、
容量为c,极限为p+n,位置为p+n

答案:B

24、在哪些情况,SelectionKey对象会失效?
A、
程序调用SelectionKey的cancel()方法。
B、
程序调用SelectionKey的close()方法。
C、
关闭与SelectionKey关联的Channel。
D、
与SelectionKey关联的Selector被关闭。

答案:ACD

25、线程执行Selector对象的select(long timeout)方法时进入阻塞状态,在哪些情况,线程会从select()方法中返回?
A、
至少有一个SelectionKey的相关事件已经发生。
B、
其他线程调用了Selector对象的wakeup()方法。
C、
与Selector对象关联的一个SocketChannel对象被关闭。
D、
当前执行select()方法的线程被其他线程中断。
E、
超出了等待时间。

答案:ABDE

26、以下说法正确的是:______。
A、
使用同一个Socket对象可以接收来自不同源地址数据
B、
使用同一个DatagramSocket对象可以向不同的目的地址发送数据
C、
使用同一个Socket对象可以向不同的目的地址发送数据
D、
使用同一个DatagramSocket对象不可以接收来自不同源地址的数据

答案:B

27、当DatagramSocket接收到了来自任意一个主机的数据报,如何知道该数据报的发送者的UDP端口?
A、
调用DatagramPacket的getPort()方法
B、
调用DatagramSocket的getPort()方法
C、
调用DatagramPacket的getRemotePort()方法
D、
调用DatagramSocket的getRemotePort()方法

答案:A

28、以下是DatagramPacket的构造方法,哪些用于发送数据报?
A、
public DatagramPacket(byte[] data,int length)
B、
public DatagramPacket(byte[] data,int offset, int length)
C、
public DatagramPacket(byte[] data,int offset, int length,InetAddress address,int port)
D、
public DatagramPacket(byte[] data,int offset,int length,SocketAddress address)

答案:CD

29、关于DatagramSocket的connect()和disconnect()方法,下面哪些说法是正确?
A、
connect()方法使得DatagramSocket暂时只能与特定的远程DatagramSocket通信。
B、
DatagramSocket的connect()方法与Socket的connect()方法的作用相同。
C、
可以对一个DatagramSocket对象多次调用connect()方法。
D、
调用了DatagramSocket的disconnect()方法后,这个DatagramSocket就失效了,不能再收发数据报。

答案:AC

30、以下哪个类没有实现java.io.Serializable接口
A、
java.io.OutputStream类
B、
java.lang.String类
C、
java.lang.Integer类
D、
java.util.Date类

答案:A

31、以下哪一段代码向C:\data.obj文件中写入一个Date对象?
A、
ObjectOutputStream out=new ObjectOutputStream(new fileOutputStream(“C:\data.obj”));
out.writeDate(new Date());
B、
ObjectOutputStream out=new ObjectOutputStream(new fileOutputStream(“C:\data.obj”));
out.writeObject(new Date());
C、
FileOutputStream out=new FileOutputStream(“C:\data.obj”);
out.writeObject(new Date());
D、
FileOutputStream out=new FileOutputStream(new ObjectOutputStream"C:\data.obj"));
out.writeObject(new Date());

答案:B

32、可序列化类中的writeObject()方法和readObject()方法使用什么访问控制修饰符?
A、
public
B、
没有
C、
protected
D、
private

答案:A

33、默认的序列化方式有什么特点?
A、
仅仅对对象的非transient的实例变量进行序列化
B、
不会序列化对象的transient的实例变量
C、
会序列化静态变量
D、
会序列化对象的所有public类型的成员变量

答案:AB

34、默认的反序列化方式有什么特点?
A、
可能会调用类的静态代码块。
B、
一定会调用类的静态代码块。
C、
不会调用类的任何构造方法。
D、
会调用类的不带参数的构造方法。

答案:AC

35、对于一个类的两个不同版本,如果它们的序列化版本号serialVersionUID相同,就一定序列化兼容,这句话是否正确?
A、
正确
B、
不正确

答案:B

36、关于Externalizable接口,下面哪些说法正确?
A、
Externalizable接口继承自Serializable接口。
B、
writeExternal()方法负责序列化操作。
C、
readExternal()方法负责反序列化操作。
D、
在对实现了Externalizable接口的类的对象进行反序列化时,一定会先调用类的不带参数的构造方法。
E、
在对实现了Externalizable接口的类的对象进行反序列化时,一定会先调用类的静态代码块。
F、
一个类如果实现了Externalizable接口,那么它必须具有public类型的不带参数的构造方法。

答案:ABCDF

37、在RMI框架中,rmiregistry注册表负责什么任务?
A、
创建远程对象。
B、
为远程对象提供命名服务。
C、
及时销毁无用的远程对象。
D、
调用远程对象的方法。

答案:B

38、 以下哪些说法正确?
A、
远程对象必须实现java.io.Serializable接口
B、
远程方法的参数以及返回值必须是基本类型,或者是实现了java.io.Serializable接口的Java类型。
C、
RMI框架要求客户端与服务器端都是Java程序。
D、
rmiregistry注册表默认情况下注册1099端口。

答案:CD

39、远程类必须符合哪些规范?
A、
必须实现Remote接口
B、
必须继承UnicastRemoteObject类
C、
所有远程方法必须声明抛出RemoteException
D、
所有构造方法必须声明抛出RemoteException
E、
必须提供public类型的不带参数的构造方法

答案:ACD

40、 以下哪些说法正确?
A、
远程对象只有被注册到rmiregistry注册表,才能被远程访问。
B、
远程对象不能位于客户端,只能位于服务器端。
C、
当远程对象作为参数或返回值在网络上传送时,实际上传送的是远程对象的存根。
D、
服务器端也可以访问客户端的远程对象。
E、
远程对象允许被多个客户并发访问。

答案:CDE

41、对于以下程序代码:
ResultSet rs1= stmt.executeQuery(“SELECT NAME from CUSTOMERS where ID=1”); //line1
ResultSet rs2= stmt.executeQuery(“SELECT NAME from CUSTOMERS where ID=2”); //line2
if(rs1.next())System.out.println(rs1.getString(1)); //line3
if(rs2.next())System.out.println(rs2.getString(1)); //line4
下面哪些说法正确?
A、
编译出错
B、
运行时在第3行抛出异常
C、
编译通过,并且正常运行
D、
运行时在第4行抛出出错

答案:C

42、哪几类JDBC驱动程序完全用Java语言编写?
A、
第1类
B、
第2类
C、
第3类
D、
第4类

答案:CD

43、 以下哪些对象由Connection对象创建?
A、
Statement对象
B、
PreparedStatement对象
C、
CallableStatement对象
D、
ResultSet对象
E、
RowSet对象

答案:ABC

44、以下哪些方法属于Statement接口的方法?
A、
execute()
B、
executeQuery()
C、
executeDelete()
D、
open()
E、
close()

答案:ABE

45、以下哪些说法正确?
A、
一个Statement对象可以执行多条SQL语句。
B、
一个Connection对象可以创建一个或一个以上的Statement对象。
C、
一个Statement对象关闭后,还能继续访问由它创建的ResultSet对象。
D、
一个Statement对象可以先后打开多个结果集。

答案:ABD

46、以下程序代码定义了一个ResultSet对象:
ResultSet rs= stmt.executeQuery(“SELECT NAME,AGE from CUSTOMERS where ID=1”);
假定以上SQL语句最多只返回一条记录,下面哪些代码能打印结果集
中的AGE字段?
A、
if(rs.next())System.out.println(rs.getInt(2));
B、
if(rs.next())System.out.println(rs.getInt(1));
C、
System.out.println(rs.getInt(1));
D、
if(rs.next())System.out.println(rs.getInt(“AGE”));

答案:AD

java网络编程 测试题相关推荐

  1. java 密钥工厂 desede_20145212 实验五《Java网络编程》

    20145212 实验五<Java网络编程> 一.实验内容1.运行下载的TCP代码,结对进行,一人服务器,一人客户端: 2.利用加解密代码包,编译运行代码,一人加密,一人解密: 3.集成代 ...

  2. Java学习总结:52(Java网络编程)

    Java网络编程 开发第一个网络程序 java.net包提供了网络编程有关的开发工具类,在此包中有一下两个主要的核心操作类. ServerSocket类:是一个封装支持的TCP协议的操作类,主要工作在 ...

  3. Java - 网络编程(NetWork)

    Java - 网络编程(NetWork) 一.java.net包下的 InetAddress 类的使用: > 一个 InetAddress 代表着一个IP地址 > 主要用来查看本机的IP和 ...

  4. 【Java】 Java网络编程总结

     一.网络编程三要素: IP地址:每个设备在网络中的唯一标识. 端口号:每个程序在设备上的唯一标识. 协议:为计算机网络中进行数据交换而建立的规则或约定的集合. UDP: 面向无连接,数据不安全,速度 ...

  5. Java网络编程笔记5

    在Java网络编程笔记4中我们看到了客户端与服务器通信的过程,只是在前面的程序只是单个客户端与服务器通信 的例子. 接下来我们看如何实现多个客户端与服务器通信,对于服务器来说,它要为每个客户端请求的S ...

  6. 实验五 Java网络编程及安全 实验报告 20135232王玥

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序与设计         班级:1352 姓名:王玥 学号:20135232 成绩:             指导 ...

  7. NIO详解(一):java网络编程IO总结(BIO、NIO、AIO)

    1.基本概念 在Java网络通信中,最基本的概念就是Socket编程了.Socket又称"套接字" 向网络发出请求或者应答网络请求. Socket 和ServerSocket类库位 ...

  8. 04.Java网络编程(转载)

    1.网络编程 1.1计算机网络概述 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输. 按照计算机网络的定义,通过一定的物理设备将处于不同位置的计算机连接起来组成的网络,这个网络中包含 ...

  9. python网络编程视频教程_Java网络开发视频教程 – 一站式学习Java网络编程视频教程 全面理解BIO(无密)...

    Java网络开发视频教程 – 一站式学习Java网络编程视频教程 全面理解BIO(无密) 全面理解BIO/NIO/AIO 网络层编程,是每一个开发者都要面对的技术.课程为解决大家学习网络层知识的难题, ...

  10. 你所需要的java网络编程大总结

    好好学java java知识分享/学习教程免费分享 关注 精彩内容 你所需要的java全套视频教程 你所需要的java电子图书 你所需要的大数据视频教程 你所需要的java练习项目 如 / 梦 上个月 ...

最新文章

  1. AI识别彻底懵逼,这到底是“牛”还是“鲨”?
  2. 外点惩处函数法·约束优化问题
  3. (2021) 18 [代码讲解] 可执行文件
  4. Servlet的文件上传
  5. 史上最全ClassLoader总结
  6. txt替换回车键符号怎么打_电脑键盘上那个点符号怎么打出来的?
  7. mysql 常用计算函数_关于MySQL常用的一些函数以及一些计算
  8. root用户Linux 环境变量的配置解决(-bash: jps: command not found)有关问题
  9. 2021秋季“金九银十”跳槽必备:软件测试面试题(附带答案)
  10. 安卓手机ip修改器_亚马逊手机端?电脑端?谁是测评一哥
  11. pod BaiduMapKit 报错解决方案
  12. 我们是这样写升级日志的,处处可以体现人文情怀
  13. Git之路——配置SSH免密码登录
  14. 使用mat工具分析对比dump文件
  15. ASP.net防止SQL注入方法
  16. Activiti6.0 - 核心数据库表及字段注释说明
  17. 关于解决未在计算机注册Active控件或者没有Active控件的解决方法
  18. 使用RNN预测各个国家的人均GDP
  19. Android TV真机测试
  20. 5328笔记 Advanced ML Chapter3-Hypothesis Complexity and Generalisation

热门文章

  1. 抓包应用分析与静态路由配置
  2. uva_572 - Oil Deposits
  3. 传统洗护O2O平台纷纷溃败 智能洗衣会是他们的翻身的机会吗?
  4. 杭电1827--Summer Holiday(SCC + 缩点)
  5. 微信小程序storage存储
  6. QT 多语言 中英文切换
  7. dubbo出现没有提供者错误 No provider available from registry x.x.x.x:2181 for service x.x.x.x
  8. 业界|比尔盖茨推荐,三个数据中的世界动向
  9. 实验五 Android Studio ListView列表视图【班级名单列表视图01】
  10. 【转载】搞笑给力的计算机与中国文学合体笔试题!