1、计算机二级(Java)32 及答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.能够支持 javadoc 命令的注释语句是【 】(分数:2.00)A./*/B./*/C./D./*/2.“+“运算符的操作数个数是【 】(分数:2.00)A.1 个B.2 个C.3 个D.4 个3.下列有关基于 Swing 的 Applet 用户界面说法不正确的是( )。(分数:2.00)A.在需要自定义 Swing 构件的时候,首先要确定使用哪种构件类作为所定制构件的父类B.paintComponent( )方法位于 J
2、Component 类内,该方法与 paint( )方法类似,也要求一个 Graphics类的实例为参数C.无论在系统开始执行还是窗口被覆盖后需要重新绘制时,paintComponent( )方法都会被系统自动调用,所以在程序中不要调用它,否则会与自动化过程相冲突D.如果需要重新绘制 Applet,就调用方法 paintComponent( )4.下列关于 Applet 的叙述中,正确的是【 】(分数:2.00)A.Applet 是 Java 类,所以可以由 JDK 中的解释器 java 直接解释运行B.Applet 的主类不一定要定义为 javaappletApplet 类或 JApplet
3、 类的子类C.Applet 与 Application 的主要区别在执行方式上D.Applet 不能在浏览器中运行5.为了区分类中重载的同名的不同的方法,要求( )。(分数:2.00)A.采用不同的形式参数列表B.返回值的数据类型不同C.调用时用类名或对象名做前缀D.参数名不同6.在下列源代码文件 Testjava 中,哪个选项是正确的类定义?(分数:2.00)A.只能根据已建查询创建查询B.只能根据数据库表创建查询C.可以根据数据库表创建查询,但不能根据已建查询创建查询D.可以根据数据库表和已建查询创建查询7.在软件设计中,不属于过程设计工具的是【 】(分数:2.00)A.PDL(过程设计语
4、言)B.PAD 图C.N-S 图D.DFD 图8.下列程序的执行结果是( )。 public class Testgg public static void main(String args) float t=9.0f; int q=5; System.out.println(t+)*(- -q); (分数:2.00)A.12B.11C.10D.99.下列哪个关键字通常用来对对象进行加锁,该标记使得对对象的访问是排他的?(分数:2.00)A.线程的优先级数值越大,表示该线程优先级越低B.新建线程将继承创建它的父线程的优先级C.NORM_PRIORITY 代表普通优先级,默认值是 5D.一般情况
5、下,主线程具有普通优先级10.下列程序的执行结果是( )。 public class Testaa public static void main(String args ) System.out.println(5/2); (分数:2.00)A.复选框B.列表框C.命令按钮D.选项组11.下列赋值语句中错误的是【 】(分数:2.00)A.float f=11.1f;B.double d=5.3E12;C.char c=/r;D.byte bb=433;12.按照“后进先出“原则组织数据的数据结构是【 】(分数:2.00)A.队列B.栈C.双向链表D.二叉树13.下列叙述中正确的是【 】(分数
6、:2.00)A.程序设计就是编制程序B.程序的测试必须由程序员自己去完成C.程序经调试改错后还应进行再测试D.程序经调试改错后不必进行再测试14.下列叙述中正确的是【 】(分数:2.00)A.软件交付使用后还需要进行维护B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令15.给出下列代码,则数组初始化中哪项是不正确的? byte array1,array2 ; byte array3 ; byte array4; (分数:2.00)A.C+语言中的多态性分为编译时的多态性和运行时的多态性B.编译时的多态性可通过函数重载实现C.运行时的
7、多态性可通过模板和虚函数实现D.实现运行时多态性的机制称为动态绑定16.下列哪个不是 Java 虚拟机的执行过程的特点?(分数:2.00)A.2B.3C.4D.517.一个应用程序必须继承 Canvas 类才能获得有用的功能,比如创建一个自定义构件。如果想在画布上完成一些图形处理,则 Canvas 类中的哪个方法必须重写?(分数:2.00)A.TrueB.FalseC.-1D.118.公有成员变量 MAX 是一个 int 型值,变量的值保持常数值 100,则下列使用哪个选项的 声明定义这个变量是正确的? (分数:2.00)A.protectedB.staticC.finalD.super19.
8、下列不是 InputStream 子类的是【 】(分数:2.00)A.文件输入流 FileInputStreamB.对象输入流 ObjectInputStreamC.字符输入流 CharInputStreamD.压缩文件输入流 ZipInputStream20.给出下列有关 List 的表达式,则哪个选项的叙述是对的? List 1 = new List(6,true); (分数:2.00)A.在没有其他的约束的条件下该列表将有 6 行可见B.一行的最大字符数是 6C.列表不允许用户多选D.列表只能有一项被选中21.给出下列代码,如何使成员变量 m 被方法 fun( )直接访问? class
9、Test private int m; public static void fun( ) (分数:2.00)A.使用报表设计器可以创建自定义报表B.使用报表向导可以创建报表C.使用快速报表可以创建简单规范的报表D.利用报表向导创建的报表是快速报表22.下列哪个标识符不是合法的标识符?(分数:2.00)A.PicturePrint “Microsoft“B.Print “Microsoft“C.PrinterPrint “Microsoft“D.DebugPrint“Microsoft“23.下列关于过滤流的说法不正确的是( )。(分数:2.00)A.Java 对 I/O 访问还提供了同步处理
10、机制,这就是过滤流B.使用 BufferedlnputStream 输入时,数据光按块读入缓冲区,然后读操作直接访问缓冲区C.使用一个过滤流可以直接通过构造方法的参数去指定连接的 I/0 流D.DatalnputStream 和 DataOutputStream 也是过滤流子类,其特点是不仅能读/写数据流,还能读/写Java 的内构类型 boolean,int 等数据24.在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是【 】(分数:2.00)A.与文件的结构相同B.与文件目录的层次相同C.与文件类型相同D.与文件大小相同25.下列方法中哪个是执行线程的方法?(分数
11、:2.00)A.run( )B.start( )C.sleep( )D.suspend( )26.javautil 包中 Date 对象表示时间默认顺序是( )。(分数:2.00)A.年、星期、月、日、小时、分、秒B.秒、分、小时、日、月、星期、年C.小时、分、秒、星期、月、日、年D.星期、月、日、小时、分、秒、年27.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是【 】(分数:2.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/228.给出下列有关 List 的表达式,则哪个选项的叙述是对的? List 1 = n
12、ew List(6,true); (分数:2.00)A.No 5 6 8B.5 6 8 NoC.No 5 14D.8 6 No 529.在深度为 7 的满二叉树中,叶子结点的个数为【 】(分数:2.00)A.32B.31C.64D.6330.下列 InputStream 类中哪个方法可以用于关闭流?(分数:2.00)A.skip( )B.close( )C.mark( )D.reset( )31.下列关于继承的哪项叙述是正确的?(分数:2.00)A.视图结果存放在数据库中B.视图设计器中不存在“查询去向”的选项C.查询设计器中没有“数据更新”选项卡D.查询和视图都可以在磁盘中找到相应的文件32
13、.调用线程的下列方法,不会改变该线程在生命周期中状态的方法是【 】(分数:2.00)A.yeild()B.wait()C.sleep()D.isAlive()33.下列关于 Applet 的叙述中,错误的是【 】(分数:2.00)A.Applet 是 Java 类,所以可以由 JDK 中的解释器 javaexe 直接解释运行B.Applet 应该定义为 javaappletApplet 类或 javaxswingJApplet 类的子类C.Applet 与 Application 的主要区别在执行方式上D.通过在 HTML 文件中采用PARAM标记可以向 Applet 传递参数34. 执行下面
14、程序后输出的正确结果是【 】 public class Test public static void main(String args) Systemoutprint(100%3); Systemoutprint(“,“); Systemoutprint(100%3.0); (分数:2.00)A.1,1B.1,1.0C.1.0,1D.1.0,1.035.在 Java 中,数组是当成什么来处理?(分数:2.00)A.20 20B.30 20C.30 40D.15 15二、填空题(每空 2 分,共 30 分)(总题数:15,分数:30.00)36.下列是一个 Java Applet 程序,填空使
15、它的功能为计算数组下标为偶数的各元素的和。 import java.applet.*; import java.awt*; public class Testww extends Applet public void paint(Graphics g) int a=1,3,5,7,9,10; int total=0; float ave; for(int i=0;ialength; 1) total+=ai; g.drawstring(“Total of array elements:=“+total,25,25); (分数:2.00)填空项 1:_37.当使用 Threadt=newThre
16、ad(r)创建一个线程时,表达式:rinstanceofThread 的值是 1。(分数:2.00)填空项 1:_38.设 a = 8,则表达式 a 2 的值是 1。(分数:2.00)填空项 1:_39. 1 是 Java 程序的并发机制,它能同步共享数据,处理不同事件。(分数:2.00)填空项 1:_40. 1 是字符的序列,也是组织字符的基本结构。(分数:2.00)填空项 1:_41.catch 子句都带有一个参数,该参数是某个异常的类及其变量名,catch 用该参数去与抛出异常对象的类进行 1。 (分数:2.00)填空项 1:_42.构件不能独立地显示出来,必须将构件放在一定的 1 中才
17、能显示。(分数:2.00)填空项 1:_43.若想在程序中使用 JLabel 类,则该程序可以使用 import 1JLabel;语句引入 JLabel 类。 (分数:2.00)填空项 1:_44.字符串分为两大类,一类是字符串常量,使用 String 类的对象表示;另一类是字符串变量,使用 1类的对象表示。(分数:2.00)填空项 1:_45.表达式 2*5/25,10/2*5,1/23 和 5/3 的计算结果分别是 1。(分数:2.00)填空项 1:_46.捕获异常要求在程序的方法中预先声明,然后调用方法时,用 1 语句捕获并处理。(分数:2.00)填空项 1:_47.Java 语言中的浮
18、点型数据根据数据存储长度和数值精度的不同,进一步分为 float 型和 double 型,其中 double 型占 1 位。 (分数:2.00)填空项 1:_48.程序中多个线程互相等待对方的持有的锁,而在得到对方持有的锁之前都不会释放自己的锁,就造成了都想得到资源而又都得不到的现象,使线程不能继续运行,这种状态在计算机中称为 1。(分数:2.00)填空项 1:_49.请阅读下列程序代码,然后将程序的执行结果补充完整。 程序代码: public class throwsException static void Proc(int sel) throws ArithmeticException,
19、ArrayIndexOutOfBoundsException Systemoutprintln(“In Situation“+sel);if(sel=0) Systemoutprintln(“no Exception caught“); return; else if(sel=1) int iArray=new int4; iArray1=3; public static void main(String args) try Proc(0);Proc(1) catch(ArrayIndexOutOfBoundsException e) Systemoutprintln(“Catch“+e);
20、finally Systemoutprintln(“in Proc finally“); 执行结果: In、Situation 0 no Exception caught 1 in Proc finally (分数:2.00)填空项 1:_50.Java 不直接支持多继承,但可以通过 1 实现多继承。(分数:2.00)填空项 1:_计算机二级(Java)32 答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.能够支持 javadoc 命令的注释语句是【 】(分数:2.00)A./*/B./*/C./D.
21、/*/ 解析:本题考查 Java 中的注释语句。注释是程序设计的重要组成部分,应熟练掌握。Java 中有三类注释语句:文档注释/*/,被 javadoc 处理,可以建立类的一个外部说明性文件,所以本题正确答案是选项 D;C 语言注释风格/*/,用于去掉当前不再使用但仍想保留的代码等;单行注释/,格式上要求注释符/后必须紧跟一个空格,然后才是注释信息。2.“+“运算符的操作数个数是【 】(分数:2.00)A.1 个 B.2 个C.3 个D.4 个解析: 本题考查 Java 运算符的概念。这是重点内容,只需要细心即可。程序涉及的数据处理,都是通过运算符和表达式来操作,是程序设计的基础,因此务必掌握
22、。按照操作数的数目划分,运算符可以分为:一元运算符:+,-,+,-;二元运算符:+,-,;三元运算符:?:。所以本题正确答案是选项 A。简单点儿说就是有几个操作数就是几元运算符;反过来,是几元运算符就有几个操作数。3.下列有关基于 Swing 的 Applet 用户界面说法不正确的是( )。(分数:2.00)A.在需要自定义 Swing 构件的时候,首先要确定使用哪种构件类作为所定制构件的父类B.paintComponent( )方法位于 JComponent 类内,该方法与 paint( )方法类似,也要求一个 Graphics类的实例为参数C.无论在系统开始执行还是窗口被覆盖后需要重新绘制
23、时,paintComponent( )方法都会被系统自动调用,所以在程序中不要调用它,否则会与自动化过程相冲突D.如果需要重新绘制 Applet,就调用方法 paintComponent( ) 解析:如果需要重新绘制 Applet,就调用 repaint( )方法,而不是 paintComponent ( )方法。repaint( )方法将引起系统调用所有构件的 paintComponent( )方法,并且使得所有构件的 paintComponent()方法的Graphics 变量被正确配置。4.下列关于 Applet 的叙述中,正确的是【 】(分数:2.00)A.Applet 是 Java
24、类,所以可以由 JDK 中的解释器 java 直接解释运行B.Applet 的主类不一定要定义为 javaappletApplet 类或 JApplet 类的子类C.Applet 与 Application 的主要区别在执行方式上 D.Applet 不能在浏览器中运行解析: 本题考查 Java 中 Applet 与 Application 的区别。这个知识点是考试重点,历次考试都有涉及,务必掌握。Applet 是 Java 类,但 Applet 不能由 JDK 中的解释器java 直接运行,要在浏览器或 appletviewer 中运行,运行过程比 Application 更复杂,选项 A 和
25、选项 D 说法错误。Applet 的主类一定要定义为 javaappletApplet 类或 JApplet 类的子类,选项 B 说法错误。Applet 与 Application 的主要区别在执行方式上,Application 以 main()方法为入口点运行,两者都是通过“javac”命令编译,所以只有选项 C 说法正确。5.为了区分类中重载的同名的不同的方法,要求( )。(分数:2.00)A.采用不同的形式参数列表 B.返回值的数据类型不同C.调用时用类名或对象名做前缀D.参数名不同解析:方法的重载是指多个方法可以享有相同的名字,但参数的数量或类型必须不相同(采用不同的形式参数列表)。程
26、序可按参数列表决定调用对应的方法6.在下列源代码文件 Testjava 中,哪个选项是正确的类定义?(分数:2.00)A.只能根据已建查询创建查询B.只能根据数据库表创建查询C.可以根据数据库表创建查询,但不能根据已建查询创建查询D.可以根据数据库表和已建查询创建查询 解析:形参的数目不能少于实参的数目,否则系统会产生运行时错误;当形参的数量大于实参的数量时?,多余的形参初值取逻辑假F。7.在软件设计中,不属于过程设计工具的是【 】(分数:2.00)A.PDL(过程设计语言)B.PAD 图C.N-S 图D.DFD 图 解析: 数据流图 DFD,是结构化分析方法最主要的一种图形工具,不属于过程设
27、计工具。8.下列程序的执行结果是( )。 public class Testgg public static void main(String args) float t=9.0f; int q=5; System.out.println(t+)*(- -q); (分数:2.00)A.12B.11C.10 D.9解析:首先判断(m+)9.下列哪个关键字通常用来对对象进行加锁,该标记使得对对象的访问是排他的?(分数:2.00)A.线程的优先级数值越大,表示该线程优先级越低 B.新建线程将继承创建它的父线程的优先级C.NORM_PRIORITY 代表普通优先级,默认值是 5D.一般情况下,主线程具
28、有普通优先级解析:Visual Basic 像其他的应用程序一样可以单击屏幕右上角的“关闭”按钮来关闭,退出 Visual Basic,所以选项 C)是正确的;Visual Basic 也提供了快捷键 Alt+Q,用来退出系统,故选项 B)也是正确的;再就是单击“文件”菜单,然后选择“退出” 选项也可退出 Visual Basic 系统,所以选项 A)正确;选项 D)错误,Alt+E 是用于打开“编辑”菜单的热键。10.下列程序的执行结果是( )。 public class Testaa public static void main(String args ) System.out.prin
29、tln(5/2); (分数:2.00)A.复选框B.列表框C.命令按钮 D.选项组解析:启动 Visual Basic 有 4 种方式:打开“我的电脑”,找到存放 Visual Basic 所在的系统文件的硬盘及文件夹,双击“VB6exe”图标,即可进入 Visual Basic 编程环境;所以选项 A)是正确的;利用“开始”菜单 中的“程序”命令方式进入;所以选项 C)也是正确的;使用“开始”菜单中的“运行”命令,在“打开”栏中键入 VB6exe 的存放路径,单击 “确定”按钮即可;把 VB6exe 文件直接拖到桌面可建立启动 Visual Basic 的快捷方式,双击该执行文件即可。11.
30、下列赋值语句中错误的是【 】(分数:2.00)A.float f=11.1f;B.double d=5.3E12;C.char c=/r;D.byte bb=433; 解析:本题考查 Java 语言中的赋值运算。赋值运算符(二)是把一个表达式的值赋给一个变量,赋值运算符两侧的类型不一致的情况下,如果左侧变量类型的级别高,则右侧的数据被转化为与左侧相同的高级数据类型后赋给左侧变量:否则,需要使用强制类型转换运算符。选项 A 是 float 常量;选项 B 是 double型:选项 C 是一个字符型常量,需要注意,这里的“/”是转移字符,“/r”表示回车,并不是字母 r;选项 D 中 433 超过
31、了 byte 类型的范围,所以是错误的。12.按照“后进先出“原则组织数据的数据结构是【 】(分数:2.00)A.队列B.栈 C.双向链表D.二叉树解析: “后进先出“表示最后被插入的元素最先能被删除。选项 A 中,队列是指允许在一端进行插入、而在另一端进行删除的线性表,在队列这种数据结构中,最先插入的元素将最先能够被删除,反之,最后插入的元素将最后才能被删除,队列又称为“先进先出“的线性表,它体现了“先来先服务“的原则;选项 B 中,栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素,栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。队列和栈都属于线性表,它们具有顺序存储的特
32、点,所以才有“先进先出“和“后进先出“的数据组织方式。双向链表使用链式存储方式,二叉树也通常采用链式存储方式,它们的存储数据的空间可以是不连续的,各个数据结点的存储顺序与数据元素之间的逻辑关系可以不一致。所以选项C 和选项 D 错误。13.下列叙述中正确的是【 】(分数:2.00)A.程序设计就是编制程序B.程序的测试必须由程序员自己去完成C.程序经调试改错后还应进行再测试 D.程序经调试改错后不必进行再测试解析: 软件测试仍然是保证软件可靠性的主要手段,测试的目的是要尽量发现程序中的错误,调试主要是推断错误的原因,从而进一步改正错误。测试和调试是软件测试阶段的两个密切相关的过程,通常是交替进
33、行的。选项 C 正确。14.下列叙述中正确的是【 】(分数:2.00)A.软件交付使用后还需要进行维护 B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令解析: 本题考核软件维护的概念。维护是软件生命周期的最后一个阶段,也是持续时间最长、付出代价最大的阶段,在软件交付使用后,还需要进行维护。软件维护通常有以下四类:为纠正使用中出现的错误而进行的改正性维护;为适应环境变化而进行的适应性维护;为改进原有软件而进行的完善性维护:为将来的可维护和可靠而进行的预防性维护。软件维护不仅包括程序代码的维护,还包括文档的维护。综上所述,本题的正确答案
34、是 A,其余选项的说法错误。15.给出下列代码,则数组初始化中哪项是不正确的? byte array1,array2 ; byte array3 ; byte array4; (分数:2.00)A.C+语言中的多态性分为编译时的多态性和运行时的多态性B.编译时的多态性可通过函数重载实现C.运行时的多态性可通过模板和虚函数实现 D.实现运行时多态性的机制称为动态绑定解析:如果程序中多个线程相互等待对方持有的锁,而在得到对方持有的锁之前都不会释放自己的锁,这就造成了都想得到资源而又都得不到,线程不能继续运行,这样便产生了死锁,所以对象的加锁技术没有预防死锁的发生,而是导致了死锁的发生。16.下列哪
35、个不是 Java 虚拟机的执行过程的特点?(分数:2.00)A.2B.3C.4 D.5解析:本题是一道简单的成员函数应用题,考生只要按着主函数中生成的类 Rectangle 的对象 r1 进行成员函数的调用即可得到答案。17.一个应用程序必须继承 Canvas 类才能获得有用的功能,比如创建一个自定义构件。如果想在画布上完成一些图形处理,则 Canvas 类中的哪个方法必须重写?(分数:2.00)A.TrueB.False C.-1D.1解析:此题用的是 Do 循环结构,其格式为: Do 语句块 Exit Do Loop Until 循环条件 此循环由于“先执行后检查”,所以至少执行一次。本题
36、中,程序运行到循环条件 I=7 的值为 True,才停止。所以当程序结束运行后 I=10,x=7。 18.公有成员变量 MAX 是一个 int 型值,变量的值保持常数值 100,则下列使用哪个选项的 声明定义这个变量是正确的? (分数:2.00)A.protectedB.staticC.final D.super解析:根据英语的意思 abstract window tool(AWT)。Java 核心包包括 java.lang 包,封装所有编程应用的基本类;javaawt 包,封装抽象窗口工具包,提供管理用户图形界面功能;javaio 包,提供程序的输入/输出文件操作的类;javaapplet
37、包,为 Applet 提供执行需要的所有类,主要是访问 Applet 内容的通信类;javaunil 包,提供使用程序类和集合类。 19.下列不是 InputStream 子类的是【 】(分数:2.00)A.文件输入流 FileInputStreamB.对象输入流 ObjectInputStreamC.字符输入流 CharInputStream D.压缩文件输入流 ZipInputStream解析:本题考查考生对 Java 中 InputStream 非字符输入流的掌握。所有的字节输入流都是从InputStream 继承,包括:ByteArrayInputStream,以字节数组作为输入流:F
38、ileInputStream,可对一个磁盘文件设计的数据进行处理; PipedInputStream,实现线程之间通信的一个类;FilterInputStream,过滤器输入流:SequenceInputStream,将多个输入流首尾相接;ObjectInputStream,实现 ObjectInput 接口。选项 D 中压缩文件输入流 ZipInputStream 是InflaterInputStream 的子类,而 InflaterInputStream 是 FilterInputStream 的子类,只有选项 C 中字符输出流 CharInputStream 类是字符流。本题涉及内容较多
39、,要求对整个输入输出流有所了解。20.给出下列有关 List 的表达式,则哪个选项的叙述是对的? List 1 = new List(6,true); (分数:2.00)A.在没有其他的约束的条件下该列表将有 6 行可见 B.一行的最大字符数是 6C.列表不允许用户多选D.列表只能有一项被选中解析:List 组件的该构造方法的第一个参数的意思是它的初始显式行 数,如果该值为 0 则显示 4 行,第二个参数是指定该组件是否可以多选,如果值为 true 则 是可以多选,false 是不可多选,如果不指定则缺省是不能多选。21.给出下列代码,如何使成员变量 m 被方法 fun( )直接访问? cla
40、ss Test private int m; public static void fun( ) (分数:2.00)A.使用报表设计器可以创建自定义报表B.使用报表向导可以创建报表C.使用快速报表可以创建简单规范的报表D.利用报表向导创建的报表是快速报表 解析:可串行化类的数据的访问权限(public,protected,Package 或 Private),对于数据的串行化没有影响。数据是以字节形式写入流而字符串型数据将表示 UTF 格式,即文件系统安全全局字符集转换格式。注意:正如题目中选项 C)和选项 D)中所描述的一样,对于对象的串行化处理,程序员可以不编写任何方法,使用 Java 提
41、供的串行化默认机制;对于很多类,默认的串行化处理已经能够满足串行化的需要,但这种默认的串行化比较慢,另外有时可能需要对对象的串行化进行更具体的控制,我们要用到定制串行化的功能。22.下列哪个标识符不是合法的标识符?(分数:2.00)A.PicturePrint “Microsoft“B.Print “Microsoft“ C.PrinterPrint “Microsoft“D.DebugPrint“Microsoft“解析:将位数多的数据类型向位数少的数据类型转换,只能用强制转换;而将位数少的数据类型向位数多的数据类型转换可以让编译系统按一定的优先次序自己转换,也可以进行强制转换。Java 语
42、言的各种数据类型之间提供两种转换:强制转换和自动转换。 23.下列关于过滤流的说法不正确的是( )。(分数:2.00)A.Java 对 I/O 访问还提供了同步处理机制,这就是过滤流B.使用 BufferedlnputStream 输入时,数据光按块读入缓冲区,然后读操作直接访问缓冲区C.使用一个过滤流可以直接通过构造方法的参数去指定连接的 I/0 流 D.DatalnputStream 和 DataOutputStream 也是过滤流子类,其特点是不仅能读/写数据流,还能读/写Java 的内构类型 boolean,int 等数据解析:一般使用过滤流时要求把过滤流连接到某个 I/O 流上,再通
43、过构造方法的参数去指定连接的 I/O 流。24.在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是【 】(分数:2.00)A.与文件的结构相同B.与文件目录的层次相同 C.与文件类型相同D.与文件大小相同解析:本题考查 Java 包的概念。Java 采用包来管理类名空间,为编程提供一种命名机制,也是一种可见性限制机制。定义一个包要用 package 关键字,用 package 语句说明一个包时,该包的层次结构必须与文件目录的层次相同。否则,在编译时可能出现查找不到的问题,所以选项 B 正确。25.下列方法中哪个是执行线程的方法?(分数:2.00)A.run( ) B.
44、start( )C.sleep( )D.suspend( )解析:start( )是启动线程对象,使之从新建状态转入就绪状态;sleep( )让 线程睡眠一段时间,在此期间线程不消耗 CPU 资源;suspend( )使线程挂起,暂停执行, 如果想恢复线程,必须由其他线程调用resume( )方法。 26.javautil 包中 Date 对象表示时间默认顺序是( )。(分数:2.00)A.年、星期、月、日、小时、分、秒B.秒、分、小时、日、月、星期、年C.小时、分、秒、星期、月、日、年D.星期、月、日、小时、分、秒、年 解析:javautil 包中 Date 对象表示时间的顺序是星期、月、日
45、、小时、分、秒、年。27.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是【 】(分数:2.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/2 解析:假设线性表的长度为 n,在最坏情况下,冒泡排序和快速排序需要的比较次数为 n(n-1)/2。由此可见,选项 D 正确。28.给出下列有关 List 的表达式,则哪个选项的叙述是对的? List 1 = new List(6,true); (分数:2.00)A.No 5 6 8B.5 6 8 NoC.No 5 14 D.8 6 No 5解析:本题里有三个 for 循环,但要
46、分清楚,第一个是单独的给三个元素赋值,赋完值后三个 a0=0,a1=1,a2=2;后面的两个 for 是嵌套循环,对数组元素的赋值,但由于 k=2,初值已定 for 里的条件是小于 k,所以不管怎么处理都影响不到 a 2,故答案为 2。29.在深度为 7 的满二叉树中,叶子结点的个数为【 】(分数:2.00)A.32B.31C.64 D.63解析:在二叉树的第 k 层上,最多有 2k-1(k1)个结点。对于满二叉树来说,每一层上的结点数都达到最大值,即在满二叉树的第 k 层上有 2k-1 个结点。因此,在深度为 7 的满二叉树中,所有叶子结点在第7 层上,即其结点数为 2k-1=27-1=64
47、 因此,本题的正确答案为 C。30.下列 InputStream 类中哪个方法可以用于关闭流?(分数:2.00)A.skip( )B.close( ) C.mark( )D.reset( )解析:skip( )可以跳过流中若干字节流,mark( )可以在流中标记一个位 置,reset( )可以返回标记过的位置。 31.下列关于继承的哪项叙述是正确的?(分数:2.00)A.视图结果存放在数据库中B.视图设计器中不存在“查询去向”的选项C.查询设计器中没有“数据更新”选项卡D.查询和视图都可以在磁盘中找到相应的文件 解析:查询可以从指定的表或视图中提取满足条件的记录,但它并不只限于单个表或视图,查询设计器的局限性是指它只能建立一些规则的查询,如果要建立比较复杂的查询,则只能通过 SQLSELECT 语句来实现。32.调用线程的下列方法,不会改变该线程在生命周期中状态的方法是【 】(分数:2.00)A.yeild()B.wait()C.sleep()D.isAlive() 解析:本题考查线程的概念。调用线程的 sleep()方法、yeild()方法和 wait()方法都会将线程阻塞,而isAlive()是用来测试线程,以确定线程是否活着。该方法如果返回 true,则意味着线程已经启动,但还没有结束,并不影响线程的生命周期,所以选项 D 正确。33.下列关于