[计算机类试卷]国家二级(JAVA)笔试模拟试卷58及答案与解析.doc

上传人:terrorscript155 文档编号:503801 上传时间:2018-11-29 格式:DOC 页数:26 大小:69.50KB
下载 相关 举报
[计算机类试卷]国家二级(JAVA)笔试模拟试卷58及答案与解析.doc_第1页
第1页 / 共26页
[计算机类试卷]国家二级(JAVA)笔试模拟试卷58及答案与解析.doc_第2页
第2页 / 共26页
[计算机类试卷]国家二级(JAVA)笔试模拟试卷58及答案与解析.doc_第3页
第3页 / 共26页
[计算机类试卷]国家二级(JAVA)笔试模拟试卷58及答案与解析.doc_第4页
第4页 / 共26页
[计算机类试卷]国家二级(JAVA)笔试模拟试卷58及答案与解析.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、国家二级( JAVA)笔试模拟试卷 58及答案与解析 1 下列叙述中正确的是 ( A)数据的逻辑结构与存储结构必定一一对应 ( B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构 ( C)程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构 ( D)以上三种说法都不对 2 下列叙述中正确的是 ( A)线性表是线性结构 ( B)栈与队列是非线性结构 ( C)线性链表是非线性结构 ( D)二叉树是线性结构 3 设树 T的度为 4,其中度为 1, 2, 3, 4的结点个数分 别为 4, 2, 1, 1。则 T中的叶子结点数为 ( A) 5 ( B) 6 (

2、 C) 7 ( D) 8 4 程序设计方法要求在程序设计过程中 ( A)先编制出程序,经调试使程序运行结果正确后再画出程序的流程图 ( B)先编制出程序,经调试使程序运行结果正确后再在程序中的适当位置处加注释 ( C)先画出流程图,再根据流程图编制出程序,最后经调试使程序运行结果正确后再在程序中的适当位置处加注释 ( D)以上三种说法都不对 5 下列叙述中正确的是 ( A)在面向对象的程序设计中,各个对象之间具有密切的联系 ( B)在面 向对象的程序设计中,各个对象都是公用的 ( C)在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小 ( D)上述三种说法都不对 6 下列叙述中正确的是

3、 ( A)黑箱 (盒 )测试方法完全不考虑程序的内部结构和内部特征 ( B)黑箱 (盒 )测试方法主要考虑程序的内部结构和内部特征 ( C)白箱 (盒 )测试不考虑程序内部的逻辑结构 ( D)上述三种说法都不对 7 下面不属于软件设计原则的是 ( A)抽象 ( B)模块化 ( C)自底向上 ( D)信息隐蔽 8 下述关于数据库系统的叙述中正确的是 ( A)数据库系统减少了数据冗余 ( B)数据库系统避免了一切冗余 ( C)数据库系统中数据的一致性是指数据类型一致 ( D)数据库系统比文件系统能管理更多的数据 9 用树形结构来表示实体之间联系的模型称为 ( A)关系模型 ( B)层次模型 ( C

4、)网状模型 ( D)数据模型 10 下列叙述中错误的是 ( A)在数据库设计的过程中,需求分析阶段必须考虑具体的计算机系统 ( B)在数据库设计的过程中,概念结构设计与具体的数据库管理系统有关 ( C)在数据库设计的过程中,逻辑结构设计与具体的数据库管理系统 有关 ( D)在数据库设计的过程中,物理结构设计依赖于具体的计算机系统 11 下面属于面向对象语言的是 ( A) Java语言 ( B)机器语言 ( C) C语言 ( D)汇编语言 12 下列选项默认的布局管理器不是 BorderLayout的是 ( A) Window ( B) Panel ( C) Frame ( D) Dialog

5、13 用来实现 Java虚拟机的语言是 ( A) Java ( B) C ( C) C+ ( D)汇编 14 下列关于 Java安全性的说法正确的是 ( A)有严格的访问权限检查 ( B)对程序执行前要检查 ( C)不允许使用指针 ( D)可防止对内存的非法入侵 15 下列有关 Java语言的叙述中,正确的是 ( A)可以有 2个以上 package语句 ( B)可以有 2个以上 import语句 ( C)可以有 2个以上 public类 ( D)只能有 1个类定义 16 下列代表十六进制整数的是 ( A) 0XA6 ( B) 1234L ( C) -840 ( D) 144 17 按运算符的

6、功能划分,运算符 “+=”的类型是 ( A)算术运算符 ( B)关系运算符 ( C)逻辑运算符 ( D) 赋值运算符 18 执行下面程序后输出的正确结果是 Public class Test public static void main(String args) byte x=3,y=4; long r=80L; System out print(r/y); System out print(”, ”); System out print(x/y); ( A) 20 0,1 ( B) 20 0,1 0 ( C) 20,0 ( D) 20,1 0 19 下面语句会产生编译错误的是 ( A) f

7、loat F=1024 0F; ( B) double D=1024 0; ( C) byte B=1024; ( D) char C=1024; 20 下面程序段的输出结果是 public class Test public static void main(Stringargs) int x, y; x=(int)Math sqrt(5)/2+(int)Math random()*5/2; y=(int)Math sqrt(3)/2+(ht)Math random()*3/2; if(x y) System out println(”x y”); else if(x=y) System o

8、ut println(”x=y”); else System out Println(”x y”); ( A) x y ( B) x=y ( C) x y ( D)编译错误 21 下列关于内部类的说法,正确的是 ( A)内部类可以与它包含的类名相同 ( B)内部类只能使用它所在类的静态成员变量,不能使用它所在类的方法中的局部变量 ( C)内部类可以用 abstract修饰定义为抽象类,不能用 ptivate或 protected定义 ( D)外部使用内部类时必须给出类的全名 22 定义一个表示 10个值为 null的字符串数组,下面选项正确的是 ( A) Stringa; ( B) Strin

9、g; ( C) char a10; ( D) String a=new String10; 23 有一个接口定义如下,下列选项中实现了该接口并且不是抽象的是 interface A int method1(int i); int method2(int j); ( A) class implements int method 1() int method 2() ( B) class int method 1(int i) int method 2(int j) ( C) class implements int method 1(int i) int method 2(int j) ( D)

10、 class extends int method 2(int j) int method 1(int j) 24 下面程序段的输出结果是 class Base int i; Base() add(1); void add(int v) i+=v; void print() System out println(i); class Extension extends Base Extension() add(2); void add(int v) i+=*2; public class Test public static void main(String args) bogo(new Ext

11、ension(); static void bogo(Base b) b add(8); b print(); ( A) 9 ( B) 18 ( C) 20 ( D) 22 25 通常我们使用哪个方法来为一个部件注册事件监听器 ( A) addXXXListener ( B) XXXListener ( C) ListenerXXX ( D) XXXListeneradd 26 关于 Applet执行的操作,下面说法正确的是 ( A)在运行时调用其他程序 ( B)可以进行文件读写操作 ( C)不能装载动态连接库和调用任何本地方法 ( D)试图打开一个 socket进行网络通信,但是所连接的主机

12、并不是提供 Applet的主机 27 下列关于 Applet生命周期的说法,正确的是 ( A) void init()在 Applet下载前调用 ( B) void start()只在初始化之后调用 ( C) void stop()在关闭浏览器时调用 ( D) stop()总在 void destroy()之前被调用 28 对于下面语句的说法,不正确的是 Thread thrObj=new Thread(); ( A)系统没有为该线程对象分配资源 ( B)只能启动或者终止 ( C)创建了一个空的线程对象 ( D)可以调用其他方法 29 在 Java中,线程是 ( A)分时的 ( B)抢占式的

13、( C)非抢 占式的 ( D)非分时的 30 下列关于线程和进程的说法正确的是 ( A)进程结构的所有成分都在用户空间内 ( B)用户程序能够直接访问进程涉及的数据 ( C)线程是内核级的实体 ( D)线程结构驻留在用户空间中 31 下面程序段的输出结果为 package test; public class A int x=20; static int y=6; public static void main(String args) Class B b=new Class B(); b go(10); System out println(”x ”+b x); class Class B

14、int x; void go(int y) ClassA a=new ClassA(); x=a.y; ( A) x=10 ( B) x=20 ( C) x=6 ( D)编译不通过 32 下面程序段的输出结果为 public class Test int a, b; Test() a=100; b=200; Test(int x,int y) a=x; b=y; public static void main(String args) Test Obj1=new Test(12,45); System out println(”a=”+Obj 1 a+” b=”+Obj 1 b); Test

15、Obj2=new Test(); System out println(”a=”+Obj 2 a+” b=”+Obj 2 b); ( A) a=100 b=200 a=12 b=45 ( B) a=12 b=45 a=100 b=200 ( C) a=12 b=200 a=100 b=45 ( D) a=100 b=45 a=12 b=200 33 在匹配器 (Matcher)类中,用于寻找下一个模式匹配串的方法是 ( A) static boolean matches() ( B) boolean matcher find() ( C) mtmatcher start() ( D) int

16、matcher end() 34 下列说法正确的是 ( A)共 享数据的所有访问都必须作为临界区 ( B)用 synchronized 保护的共享数据可以是共有的 ( C) Java中对象加锁不具有可重入性 ( D)对象锁不能返还 35 在 Java Applet程序中,如果对发生的事件做出响应和处理的时候,应该使用下列哪个语句 ( A) import java awt event *; ( B) import java io *; ( C) import java awt *; ( D) import java applet *; 36 算法的复杂度主要包括【 】复杂度和空 间复杂度。 37

17、 数据的逻辑结构在计算机存储空间中的存放形式称为数据的【 】。 38 在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块 (桩模块 )。其中【 】的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。 39 一棵二叉树第六层 (根结点为第一层 )的结点数最多为【 】个。 40 问题处理方案的正确而完整的描述称为【 】。 41 【 】是 Java的特殊应用程序,它嵌入到 HTML中,发布到互联网上。 42 Java语言的数据类型分为简 单数据类型和【 】两种。 43 赋值表达式是由位于赋值运算符左边的变量和右边的【 】组成。 44 下列是一个 Java Ap

18、plet程序,填空使它的功能为计算数组各元素和的平均值。 import java applet.*; import java awt.*; public class Testvv extends Applet public void paint(Graphics g) int a =1,3,5,7,9,10; double tota1=0.0, ave=0.0; for(int i=0;i a.length;i+) total+=ai; ave=total/【 】 ; g.drawString(“ave=“+ave,30,60; 45 在 Java语言的所有方法中,比较特殊的一类方法是抽象方法

19、,它只有方法头,而没有【 】。 46 下列程序的执行结果是【 】。 import java.io.*; public class ArrayTest public static void main(String args) int i; int a = new int5; for( i=0;i 5;i+ ) ai = i; for( i=a.length-1;i =0;i-) System.out.print( “a“+i+“=“+ai ); 47 在 JDK1.4的 java.util.rcgex正则表达式包中,有一个【 】类,该类的 static Pattern compile方法用于将正

20、则表达式字符串编译成模式对象来进行快速模式匹配。 48 在实现 Serializable的类中,静态变量和使用【 】关键字可以使某些数据不被串行化。 49 在自定义 Swing构件的时候,首先要确定使用哪种构件类作为所定制构件的【 】,建议继承 JPanel类或更具体的 Swing构件类。 50 下面这段程序是基于 AWT的 Applet用户界面,请根据提示在程序中的画线处填入正确的语句使程序能够正确运行。 import java.applet.Applet; import java.awt.TextField; public class AwtSimple extends Applet Te

21、xtField field; public void init() field = new TextField();/创建 一个文本域并设置为不可编辑 field.setEditable(false); 【 】 /设置布局管理器,使得文本域中可以显示任意长度的文件 add(fielD) ; validate(); addItem(“初始化 .“); public void start() addItem(“启动 .“); public void stop () addItem(“停止 “.); public void destroy() addItem (“准备卸载 .“); void add

22、Item(String newWorD) String t = field.getText(); System.out.println(newWorD) ; field.setText(t + newWorD) ; 国家二级( JAVA)笔试模拟试卷 58答案与解析 1 【正确答案】 D 【试题解析】 一种数据的逻辑结构根据需要可以表示成多种存储结构,因此,数据的逻辑结构与存储结构不一定是一一对应的,因此选项 A错误。计算机的存储空间是向量式的存储结构,但一种数据的逻辑结构根据需要可以表示成多种存储结构,如线性链表是线性表的链式存储结构,数据的存储结构不一定是线性结构,因此选项 B 错误。数组

23、一般是顺序存储结构,但利用数组也能处理非线性结构。选项 C错误。故应选选项 D。 2 【 正确答案】 A 【试题解析】 非空的数据结构如果满足下列两个条件则称为线性结构:有且只有一个根结点;每一个结点最多有一个前件,也最多有一个后件。线性表是线性结构。选项 A的说法正确;栈与队列是特殊的线性表,因此,它们也是线性结构,选项 B的说法错误:线性链表是线性表的链式存储结构,因此,其对应的逻辑结构也是线性结构,而不是非线性结构,选项 C的说法错误:二叉树是非线性结构,而不是线性结构,选项 D的说法错误。 3 【正确答案】 D 【试题解析】 根据给定的条件,在树中,各结点的分支总数为:4*1+2*2+

24、1*3+4*1=15;树中的总结点数为; 15(各结点的分支总数 )+1(根结点 )16;非叶子结点总数为 : 4+2+1+1=8。因此,叶子结点数为 16(总结点数 )-8(非叶子结点总数 )=8。因此,本题的正确答案为 D。 4 【正确答案】 D 【试题解析】 程序设计的过程应是先画出流程图,然后根据流程图编制出程序,所以选项 A错误。程序中的注释是为了提高程序的可读性,使程序易于理解、易于维护,注释必须在编制程序的同时加入,所以,选项 B和 C错误。本题的正确答案为 D。 5 【正确答案】 C 【 试题解析】 在面向对象的程序设计中,对象是面向对象的软件的基本模块,它是由数据及可以对这些

25、数据施加的操作所组成的统一体,而且对象足以数据为中心的,操作围绕对其数据所需做的处理来设置,没有无关的操作。从模块的独立性考虑,对象内部各种元素彼此结合得很紧密,内聚性强。由于完成对象功能所需要的元素 (数据和方法 )基本上都被封装在对象内部,它与外界的联系自然就比较少,所以,对象之间的耦合通常比较松。所以,选项 A与 B 错误,选项 C正确。 6 【正确答案】 A 【试题解析】 黑箱测试方法完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例,选项 A是正确的,选项 B 错误。白箱测试是根据对程序内部逻辑结构的分析来选取测试用例,选项 C错误。正确答案为 A 7 【正确答案】

26、C 【试题解析】 软件设计遵循软件工程的基本目标和原则,建立了适用于在软件设计中应该遵循的基本原理和与软件设计有关的概念。它们是:抽象、模块化、信息隐蔽、模块独立性。没有自底向上,所以,本题的正确答案是 C。 8 【正确答案】 A 【试题解析】 数据库是一个通用化的、综 合性的数据集合,它可以为各种用户所共享,具有最小的冗余度和较高的数据与程序的独立性,而且能并发地为多个应用服务,同时具有安全性和完整性。即数据库系统减少了数据冗余,但不能避免一切冗余。所以选项 A正确,选项 B 错误。在数据库管理阶段中,数据是结构化的,面向系统,数据冗余度小,从而节省了数据的存储空间,也减少了对数据的存取时间

27、,提高了访问效率,避免了数据的不一致性。数据的不一致性,是指对数据的存取方式,选项 C错误。数据库系统比文件系统能管理更多的数据,并非数据库系统的特点,选项 D错误。本题正确答案是 A。 9 【正确答案】 B 【试题解析】 在数据库系统中,由于采用的数据模型不同,相应的数据库管理系统 (DBMS)也不同。目前常用的数据模型有 3种:层次模型、网状模型和关系模型。在层次模型中,实体之间的联系是用树结构来表示的,其中实体集 (记录型 )是树中的结点,而树中各结点之间的连线表示它们之间的关系。所以,本题的正确答案是 B。 10 【正确答案】 B 【试题解析】 数据库设计主要分四个步骤:需求分析,概念

28、结构设计,逻辑结构设计,物理结构设计。选项 B错误,应为所选,因为概念结构设计在需求分析的基础上对客 观世界做抽象,独立于数据库的逻辑结构,也独立于具体的数据库管理系统,即与具体的数据库管理系统无关。 11 【正确答案】 A 【试题解析】 本题考查 Java语言的特点。 Java语言是面向对象的,将客观世界看成由各种对象组成。机器语言是计算机实际处理时使用的语言,把客观世界都看成由 0和 1组成。过去的高级语言大多数是面向过程的,比如 C语言等,它们是通过数据结构与算法来描述客观世界。汇编语言属于低级语言。考生应注意区分各种语言的区别。本题正确答案为选项 A。 12 【正确答案】 B 【试题解

29、析】 本题考查 Java中的布局管理器。 Panel 和 Applet默认的布局管理器是 FlowLayout,构件在容器中放置规律是从上到下、从左到右进行放置;BorderLayout是 Window、 Frame和 Dialog 的默认布局管理器,在 BorderLayout布局管理器中构件分成 5个区域 North、 South、 East、 West和 Center,每个区域只能放置一个构件。考生应注意区分各个布局管理器的区别和联系,各个布局管理器的特点。 13 【正确答案】 B 【试题解析】 本题考查 Java语言的虚拟机 。 Java本身的编译器用 Java语言编写,运行系统的虚拟

30、机用 C语言实现。 Java语言的执行模式是半编译和半解释型,程序首先由编译器转换为标准字节代码,然后由 Java虚拟机去解释执行,字节代码实际上可以看作是虚拟机的机器代码。考生应当理解 Java语言的实现机制,这属于考试重点。正确答案为选项 B。 14 【正确答案】 B 【试题解析】 本题考查 Java的安全性特点。面向网络、分布式的 Java语言,对非法入侵的防范是非常重要的, Java语言提供充分的安全保障,在运行程序时,有严格的访问权限检查。对字节代 码执行前要检查,不允许使用指针,可防止对内存的非法入侵,它是目前安全性最佳的语言。但是 Java并不是对程序执行前检查,而是对字节代码进

31、行检查, Java编写好的程序首先由编译器转换为标准字节代码,然后由 Java虚拟机去解释执行。 15 【正确答案】 B 【试题解析】 本题考查考生对 Java语言概念的理解。属于考试重点内容,考生应注意理解这些基本概念。考生应该明确, Java语言中可以有 package语句,用来指定源文件存入所指定的包中,只能有 0或 1个,所以选项 A说法错误:可以有 0或多个以上 import语句,但必须在所有类定义之前引入标准类,所以选项 B说法正确:源文件中最多只能有一个 public类,其他类的个数不限,所以选项 C和选项 D说法错误。 16 【正确答案】 A 【试题解析】 本题考查 Java语

32、言中的整型常量。题目不难,但属于学习程序设计语言的基础,考生应该有所了解。整型常量有 3种书写格式:十进制整数、八进制整数和十六进制整数。十六进制整数以 0x 或 OX开头,如 0X123表示十进制数 291。选项 A表示的是十六进制整数,选项 B 是 long类型整型常量,选项 C是十进制整数,选项 D是八进制整数,因此 选项 A为本题正确选项。 17 【正确答案】 D 【试题解析】 本题考查 Java中的运算符。按照功能划分,运算符可以分为算术运算符: +, -, *, +, -,关系运算符: , =, =, !;布尔逻辑运算符: !, &, |;位运算符:, &,;赋值运算符:, +,

33、8,等,所以本题正确答案是选项 D;条件运算符: ?:;其他:分量运算符,下标运算符 等。考生应注意算术运算符与赋值运算符的区别以及逻辑运算符与位运算符的区别。 18 【正确答案】 C 【试题解析】 本题考查 Java语言的二元运算符的使用。 Java中的二元运算符适用于所有数值型数据类型,包括整型和浮点型。但考生需要注意,如果两个操作数全为整型,那么,只要其中一个为 long 型,则表达式结果为 long型;其他情况下,即使两个操作数全是 byte或 short型,表达式结果也是血型;如果操作数为浮点型,那么只要其中一个为 double型,表达式结果就是 double型;只有两个操作数全是

34、float型或其中一个是 float型而另外一个是整型时,表达式结果是 float型。所以选项 C为正确答案。考生如 果理解了 L 的含义,就能很容易回答。考生务必注意操作数类型不同时,运算结果的类型,同时注意当 “ ”和 “ ”运算中除数为 0时会产生异常。 19 【正确答案】 C 【试题解析】 本题考查考生对 Java中数据类型的理解。为了防止计算机高低位字节存储顺序不同,通常 byte类型用来表示数据避免出错,因为它只有 8位 bit范围是: -128 +127,选项 C超出了此范围,所以是错误的。 float类型数的表示范围是: -3 40282347E38 3 40282347E38

35、; double类型数的表示范围是: -1 79769313486231570E308 1 79769313486231570E308; char类型在内存中占16位 bit,表示范围是 0 65535。 20 【正确答案】 A 【试题解析】 本题考查 Java语言中 if-else分支结构和几个标准函数语句的用法。 Java语言的控制结构是考试重点,考生应该多读相关程序。这里重点理解程序中的两个赋值语句,赋值号右边的两个表达式分别求两个标准函数的值,再进行整除,判断出 x与 y的大小。 Math sqrt计算一个数的平方根,Math random()输出 0, 1)之间的随机数,本题中经过两

36、条赋值语句后, x=1,y=O。进入分支结构后,满足 if条件执行相应 System out println(”x y”);操作。 21 【正确答案】 D 【试题解析】 本题考查内部类的概念。在一个类的内部嵌套定义的类称为内部类,它的类名在定义它的类或程序段中或在表达式内部可以匿名使用,外部使用它时必须给出类的全名,所以选项 D说法正确。内部类的类名不允许与它包含的类名相同,选项 A说法错误。内部类可以使用它所在类的静态成员变量和实例成员变量,也可以使用它所在类的方法中的 局部变量,选项 B 说法错误。内部类不仅可以用 abstract修饰定义为抽象类,也可用 private或 protect

37、ed 定义,选项 C说法错误。同时还要注意,内部类可作为其他类的成员,而且可访问它所在类的成员,除 static内部类外,不能在类中声明 static成员。 22 【正确答案】 D 【试题解析】 本题考查字符串数组变量的声明。选项 A和选项 B的效果是一样的,都是用来定义一个字符串数组,但没有指明数组个数,不满足题目要求。选项 C是一个二维的字符数组,在 C语言中,一个二维的字符数组就可以表示一个一维的 字符串数组,而在 Java中,字符 char是基本类型,字符串 String则是以对象的形式来表示的。选项 D正确,它定义了一个含有 10个元素的字符串数组,如果没有给字符串数组赋值,则默认为

38、 null。 23 【正确答案】 C 【试题解析】 本题考查在 Java中接口的实现。接口是一种只含有抽象方法或变量的特殊的抽象类。在类的声明中用 implements 子句来表示一个类使用某个接口。选项 A在方法内没有参数值;选项 B只是定义了一个类,并没有实现与 A的接口:选项 C中使用关键字 implements 实现了该接口,这里 接口中的方法并没有使用 abstract修饰,所以不是抽象的;选项 D中 extends 是用宋继承父类的,而 A并不是一个类,不能用 extends。 24 【正确答案】 D 【试题解析】 本题考查继承和构造函数的用法。首先要明确对一个类的继承是指在父类的

39、基础上构建了一个子类,子类继承了父类的方法和状态。题目所给程序段创建的是 Extension类的实例,在运行时,从 main()函数进入程序,所有调用add()方法的过程将始终和 Extension类的 add()方法动态绑定。初始值: i=O;创建实例 newExtension();先调用父类的默认构造函数 Base(),并在父类的默认构造函数中执行 add(1), i=0+1x2,所以 i=2,再调用子类的默认构造函数Extension(),子类的默认构造函数中执行 add(2), i=2+2x2,所以 i=6:执行add(8); i=6+8x2,因此,最终 i=22,正确答案为选项 D。

40、 25 【正确答案】 A 【试题解析】 本题考查事件监听器的概念。每类事件都有对应的事件监听器,监听器是接口,根据动作来定义方法。 AWT 的构件类中提供注册和注销监听器的方法。注册监听器 : publicvoidadd(listener);注销监听器: publicvoid remove(listener)。由此可见,选项 A正确。 26 【正确答案】 C 【试题解析】 本题考查 Applet的概念。 Java虚拟机为 Applet提供能够良好运行的沙箱,一旦它们试图离开沙箱则会被禁止。由于 Applet是通过网络传递的,这就不可避免地使人想到会发生安全问题。例如,有人编写恶意程序通过小应用

41、程序读取用户密码并散播到网络上,这将会是一件非常可怕的事情。所以,必须对小应用程序进行限制。浏览器禁止 Applet执行下列操作: Applet不能运行任何本地可运行程序,选项 A错误。禁止加载本地库或方法, Applet只能使用自身的代码或 Applet浏览器提供的 Java API,不允许装载动态连接库和调用任何本地方法,选项 C正确。禁止读写本地计算机的文件系统,选项 B 错误。禁止向提供Applet之外的任何土机建立网络连接,如果 Applet试图打开一个 socket进行网络通信,所连接的主机必须是提供 Applet的主机,选项 D错误。 27 【正确答案】 D 【试题解析】 本题考

42、查 Applet生命周期的概念。 Applet生命周期是考试重点考查内容,应该加以重视。 voidini t()在 Applet下载时调用,而不是下载前调用,选项 A错误。 void start()在初始化之后以及在 Applet被重新访问时调用,不仅仅只是在初始化之后调用,选项 B错误。 voidstop()在停止执行时调用,关闭浏览器时调用的是 voiddestroy(),选项 C错误。 void destroy()在关闭浏览器 Applet从系统中撤出时调用,此时 Applet必然调用 stop()方法停止其运行,然后才能调用voiddestroy()方法从内存卸 载并释放该 Apple

43、t的所有资源。注意理解 Applet的执行过程。 28 【正确答案】 D 【试题解析】 本题考查线程的创建。通过 new 命令创建一个线程对象后,该线程对象就处于创建状态,上面的语句只是创建了一个空的线程对象,选项 C说法正确。此时,系统并没有为该线程对象分配资源,选项 A说法正确。处于这种状态的线程,只能启动或者终止,选项 B 说法正确。该线程此时并不能调用其他方法,如果调用其他方法就会失败并引起非法状态处理,选项 D说法错误,故应选。 29 【正确答案】 B 【试题解析】 本题考 查线程的调度。 Java的线程调度策略是一种基于优先级的抢占式调度,选项 B 正确。 Java这种抢占式调度可

44、能是分时的,即每个等待池中的轮流执行,也可以不是,即线程逐个运行,具体采用哪种方式,由具体 JVM而定。线程一般通过使用 sleep()等方法保证给其他线程运行事件。 30 【正确答案】 D 【试题解析】 本题考查线程和进程的概念。线程与进程在概念上是相关的,进程由代码、数据、内核状态和一组寄存器组成,而线程是由表示程序运行状态的寄存器,如程序计数器、栈指针以及堆栈组成,线程不包括进程地址空间中的代码和数据,线程是计算过程在某一时刻的状态。进程是一个内核级的实体,进程结构的所有成分都在内核空间中,一个用户程序不能直接访问这些数据。线程是一个用户级的实体,线程结构驻留在用户空间中,能够被普通的用

45、户级方法直接访问。 31 【正确答案】 C 【试题解析】 本题考查在 Java中静态变量 (类变量 )的用法。在题目程序段中生成了一个 static int y=6类变量,在 ClassA中调用的 b go(10),只不过是在 Class B 中的一个局部变量,通过调用 Class B中的 go方法可以生成一个 ClassA对象,并给这个新生成的对象赋以 ClassA中的类变量 y的值。从 main()方法作为入口执行程序,首先生成一个 Class B 的对象,然后 b go(10)会调用 ClassA,会给 x和y赋值, x=a y后, x值为 6,再返回去执行 System out pri

46、ntln(”x ” b x)语句,输出为 x=6,可见,正确答案为选项 C。 32 【正确答案】 B 【试题解析】 本题考查构造方法及构造方法重载。 Test类有两个构造方法,即使用了方法重载技术。不带参数的构造方法对类的实例变量进行特定数值的赋值,而带参 数的构造方法根据参数对类的实例变量进行赋值。 TestObj1=new Test(12,45)语句调用的是 Test(int x,int y),而 TestObj2=new Test()调用的是Test(),注意根据参数个数来区分。 33 【正确答案】 B 【试题解析】 本题考查考生对 Java中的匹配器 (Matcher)类的理解。 Ma

47、tcher类用于将一个输入字符串 input和模式串 pattern 相比较。 boolean marcher. find()方法用于寻找下一个模式匹配串; int marcher. start()方法用于返回匹配串的一个起始索引整数值; int matchenend()方法用于返回匹配串的 一个终止索引整数值。而用于输入字符串与模式串比较的方法是 static boolean matches(),选项 B正确。 34 【正确答案】 A 【试题解析】 本题考查对象加锁的相关概念。对于对象加锁的使用有些注意事项。对象的锁在某些情况下可以由持有线程返还,比如当 synchronized 语句块执行完成后;当在 synchronized 语句块中出现异常;当持有锁的线程调用该对象的wait()方法,由此可见选项 D说法错

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1