1、二级 JAVA 笔试-86 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.如果进栈序列为 e1、e2、e3、e4、e5,则可能的出栈序列是( )。(分数:2.00)A.e3、e1、e4、e2、e5B.e5、e2、e4、e3、e1C.e3、e4、e1、e2、e5D.任意顺序2.在 Java 中,线程是( )。(分数:2.00)A.分时的B.抢占式的C.非抢占式的D.非分时的3.下列关于线程和进程的说法正确的是( )。(分数:2.00)A.进程结构的所有成分都在用户空间内B.用户程序能够直接访问进程涉及的数据C.线程是内核级的实体D.线程结构
2、驻留在用户空间中4.已知一个有序线性表为(13,18,24,35,47,50,62,83,90,115,134),当用二分法查找值为 90的元素时,查找成功的比较次数为( )。(分数:2.00)A.1B.2C.3D.95.以下各选项中能正确声明一个表示 50 个值为 null 的字符串数组的是( )。(分数:2.00)A.stringa;B.string a;C.char a50;D.string a=new String506.需求分析阶段的任务是( )。(分数:2.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能7.数据库设计包括两个方面的设计内容,它们是( )。(分
3、数:2.00)A.概念设计和逻辑设计B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计8.下列代表十六进制整数的是( )。(分数:2.00)A.0123B.1900C.fa00D.0xa29.在 Java 中,实现用户界面功能的包是( )。(分数:2.00)A.java.appletB.javax.transactionC.java.utilD.java.awt10.下列关于项目中“移出”文件的说法,正确的是( )。(分数:2.00)A.被移出的文件将直接从磁盘中删除B.被移出的文件将不能被任何项目添加C.被移出的文件只是将文件移出项目,但文件保留在磁盘中D.被移出
4、的文件,以后不能再次添加到原项目中,但可以添加到其他项目中11.下面( )正确表示了 int 类型的聚会范围。(分数:2.00)A.-2162 16-1B.-2312 31-1C.-2322 32-1D.-2642 64-112.下述关于数据库系统的叙述中,正确的是( )。(分数:2.00)A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据13.执行下列程序时,会产生什么异常( )。public class Testpublic static void main(String args)int d=101
5、;int b=220;long a=321;System.Out.println(a-b)/(a-b-d);(分数:2.00)A.ArrayIndexOutOfBoundsExceptionB.NumberFormatExceptionC.ArithmeticExceptionD.EOFException14.下面程序段的输出结果是( )。class Testpublic static void main(String args)MyThread t=new MyThread();t.displayOutput(“t has been createD“);t.start();Class MyT
6、hread extends Threadpublic void displayOutput(String s)System.out.println(s);public void run()displayOutput(“t is running.“);(分数:2.00)A.t has been created.B.t has been created.T is running.C.t is running.D.编译出错15.下列选项成员变量声明正确的是( )。(分数:2.00)A.public protected final int i;B.abstract class F1.)C.privat
7、e double height;D.double weight16.有下列二叉树,对此二叉树进行后序遍历的结果为( )。(分数:2.00)A.B.C.D.17.下列程序的输出结果是( )。public class ArrayTestpublic static void main(String args)intintArray=new int3for(int i=0;i3;i+)intArrayi=i+2;system.out.println(“IntArray“+i+“=intArrayi);System.out.println(“-“);int arrLen=4;IntArray=new i
8、ntarrLen;For(int j=intArray.length;j=0;j-)intArray-i=j*3;system.out.println(“hello“+intArrayj);(分数:2.00)A.编译未通过B.编译通过,但运行错误C.可以运行,但有错误D.以上都不对18.没 R 是一个 2 元关系,S 是一个 3 元关系,则下列运算中正确的是( )。(分数:2.00)A.R-SB.RSC.RSD.RS19.下列程序的运行结果是( )。Public class sunPublic static void main(String args)int x=4,y=0;if(Math.p
9、ow(x,2)=16)y=x;if(Math.pow(x,2)15)y=1/x;if(Math.pow(x,2)15)y=(int)Math.pow(x,2)+1;system.out.println(y);(分数:2.00)A.4B.17C.18D.0.2520.结构化分析方法是面向( )的自顶向下逐步求精进行需求分析的方法。(分数:2.00)A.对象B.数据结构C.数据流D.目标21.Java 语言中所有的简单数据类型都被包含在( )中。(分数:2.00)A.java.sqlB.java.awtC.java.langD.java.math22.下面程序段的输出结果为( )。public c
10、lass Testpublic static void main(String args)booleana,b,c;a=(35);b=(a=true);System.out.println(“a=“+a+“b=“+b);c=(b=false);System.out.println(“b=“+b+“c=“+c);(分数:2.00)A.a=true b=falseb=true c=trueB.a=true b=falseb=true c=falseC.a=true b=trueb=true c=falseD.a=false b=falseb=true c=false23.数据流图用于抽象描述一个软
11、件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。(分数:2.00)A.控制流B.加工C.数据存储D.源和终24.在编写 Java 程序的时候,如果不为类的成员变量定义初始值,Java 会给它们设置默认值,下列说法中不正确的是( )。(分数:2.00)A.Byte 的默认值是 0B.int 的默认值是 0C.long 的默认值是 0.0LD.float 的默认值是 0.0f25.下列叙述中,正确的是( )。(分数:2.00)A.声明变量时必须指定一个类型B.Java 认为变量 number 与 Number 相同C.Java 中唯一的注释方式是“
12、/”D.源文件中 public 类可以有 0 个或多个26.下面程序段的输出结果是( )。public class Testpublic static void main(String args)int a,b;for(a=1,b=1;a=100;a+)if(b=10)break;if(b%2=1)b+=2;continue;System.out.println(a);(分数:2.00)A.5B.6C.7D.10127.下列关于 Applet 生命周期的说法,正确的是( )。(分数:2.00)A.voidinit()在 Applet 下载前调用B.voidstart()只在初始化之后调用C.v
13、oidstop()在关闭浏览器时调用D.stop()总在 voiddestroy()之前被调用28.用来导入已定义好的类或包的语句是( )。(分数:2.00)A.mainB.importC.public classD.class29.自定义的异常类可从( )类继承。(分数:2.00)A.ErrorB.AWTErrorC.VirtualMachineErrorD.Exception 及其子集30.下列属于合法的 Java 标识符是( )。(分数:2.00)A.“ABC“B.j3;j-)if(j%3! =0)j-;-j;-j;System.out.println(j);(分数:2.00)A.63B
14、.74C.62D.7332.设 a=8,则表达式 a2 的值是( )。(分数:2.00)A.1B.2C.3D.433.关于 Applet 执行的操作,下面说法正确的是( )。(分数:2.00)A.在运行时调用其他程序B.可以进行文件读/写操作C.不能装载动态连接库和调用任何本地方法D.试图打开一个 socket 进行网络通信,但是所连接的主机并不是提供 Applet 的主机34.t 为 int 类型,进入下面的循环之前,t 的值为 0。则下列说法中正确的是( )。while(t=1)(分数:2.00)A.循环控制表达式的值为 0B.循环控制表达式的值为 1C.循环控制表达式不合法D.以上说法都
15、不对35.对于下面语句的说法,不正确的是( )。Thread thrObj=new Thread();(分数:2.00)A.系统没有为该线程对象分配资源B.只能启动或者终止C.创建了一个空的线程对象D.可以调用其他方法二、填空题(总题数:15,分数:30.00)36.数据模型分为格式化模型与非格式化模型,层次模型与网状模型属于 1。(分数:2.00)填空项 1:_37.排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、 1 和选择排序。(分数:2.00)填空项 1:_38.软件结构是以 1 为基础而组成的一种控制层次结构。(分数:2.00)填空项 1:_39.栈中允许进行插入和删
16、除的一端叫 1。(分数:2.00)填空项 1:_40.在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个 1 实际上对应一个处理模块。(分数:2.00)填空项 1:_41.在 Java 语言中,类按照程序设计所需要的常用方法和接口封装成 1。(分数:2.00)填空项 1:_42.下面程序段的输出结果是_。public class Testpublic static void main(String args)int i=1;switch(i)case0:System.out.println(“0“);break;case1:System.out.println(“1“)
17、;case2:System.out.println(“2“);break;default:System.out.println(“default“);(分数:2.00)填空项 1:_43.Frame 默认的布局管理器是 1。(分数:2.00)填空项 1:_44.int 型 public 成员变量 MAX_LENGTH,该值保持为常数 200,则定义这个变量的语句是 1。(分数:2.00)填空项 1:_45.8|9if(sel=0)System.out.println(“noException caught“);return;else if(sel=1)int iArray=newint4;iA
18、rray-1=3;public static void main(String args)tryProc(0);Proc(1);catch(Array Index Out Of Bounds Exception e)System.out.println(“Catch“+e);finallySystem.out.println(“inProcfinally“);执行结果:In Situation 0no Exception caughtin Proc finally(分数:2.00)填空项 1:_50.当使用 Thread t=new Thread(r)创建一个线程时,表达式:r instran
19、ceof Thread 的值是 1。(分数:2.00)填空项 1:_二级 JAVA 笔试-86 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.如果进栈序列为 e1、e2、e3、e4、e5,则可能的出栈序列是( )。(分数:2.00)A.e3、e1、e4、e2、e5B.e5、e2、e4、e3、e1 C.e3、e4、e1、e2、e5D.任意顺序解析:解析 根据栈先进后出的特点可知 e1 肯定是最后出栈的,因此正确答案为选项 B。2.在 Java 中,线程是( )。(分数:2.00)A.分时的B.抢占式的 C.非抢占式的D.非分时的解析:解析 本
20、题考查线程的调度。Java 的线程调度策略是一种基于优先级的抢占式调度,选项 B 正确。Java 这种抢占式调度可能是分时的,即每个等待池中的线程轮流执行,也可以不是,即线程逐个运行,具体采用哪种方式,由具体 JVM 而定。线程一般通过使用 sleep()等方法保证给其他线程运行时间。3.下列关于线程和进程的说法正确的是( )。(分数:2.00)A.进程结构的所有成分都在用户空间内B.用户程序能够直接访问进程涉及的数据C.线程是内核级的实体D.线程结构驻留在用户空间中 解析:解析 本题考查线程和进程的概念。线程与进程在概念上是相关的,进程由代码、数据、内核状态和一组寄存器组成,而线程是由表示程
21、序运行状态的寄存器,如程序计数器、栈指针以及堆栈组成,线程不包括进程地址空间中的代码和数据,线程是计算过程在某一时刻的状态。进程是一个内核级的实体,进程结构的所有成分都在内核空间中,一个用户程序不能直接访问这些数据。线程是一个用户级的实体,线程结构驻留在用户空间中,能够被普通的用户级方法直接访问。4.已知一个有序线性表为(13,18,24,35,47,50,62,83,90,115,134),当用二分法查找值为 90的元素时,查找成功的比较次数为( )。(分数:2.00)A.1B.2 C.3D.9解析:解析 根据二分法查找需要两次:首先将 90 与表中间的元素 50 进行比较,由于 90 大于
22、 50,所以在线性表的后半部分查找;第二次比较的元素是后半部分的中间元素,即 90,这时两者相等,即查找成功。5.以下各选项中能正确声明一个表示 50 个值为 null 的字符串数组的是( )。(分数:2.00)A.stringa;B.string a;C.char a50;D.string a=new String50 解析:解析 本题考查对字符串数组变量声明的掌握。在 Java 语言中,type arrayName和 typearrayName 的效果一样,都表示声明一个数组。所以选项 A 和选项 B 的效果是一样的,对于本题来说都是不正确的,因为它们没有指明数组所包含的元素的个数:选项
23、C 是一个二维的字符数组,Java 语言跟 C语言不一样,在 C 语言中,一个二维的字符数组就可以表示一个一维的字符串数组。而在 Java 中,字符char 是基本数据类型,字符串 string 则是以对象的形式来表示的。所以,char a并不等价于 string a。而且,C 选项并没有指明数组的长度;选项 D 正确地声明了一个长度为 50 的空字符串数组。6.需求分析阶段的任务是( )。(分数:2.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能 解析:解析 需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象,充分了解原系统的工作概况,
24、明确用户的各种需求,然后在这些基础上确定新系统的功能。7.数据库设计包括两个方面的设计内容,它们是( )。(分数:2.00)A.概念设计和逻辑设计 B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计解析:解析 数据库设计包括概念设计和逻辑设计两个方面的内容。8.下列代表十六进制整数的是( )。(分数:2.00)A.0123B.1900C.fa00D.0xa2 解析:解析 本题考查 Java 语言中的整型常量。整型常量有三种书写格式:十进制整数,如 123,-30,365;八进制整数,以 0 开头,如 011 表示十进制的 9;十六进制整数:以 0x 或 0X 开头,
25、如 0X123表示十进制数 291。由此可见,选项 D 表示的是十六进制整数,选项 C 不是整数形式,选项 B 是十进制整数,选项 A 是八进制整数,只有选项 D 为本题正确选项。9.在 Java 中,实现用户界面功能的包是( )。(分数:2.00)A.java.appletB.javax.transactionC.java.utilD.java.awt 解析:解析 本题考查考生对 Java 包功能的理解。选项 A 中 java.applet 包是为 Applet 提供执行需要的所有类,主要访问 Applet 内容的通信类;选项 B 中 transaction 包是属于 javax 而不是ja
26、va,javax.transaction 包是提供事务处理所需要的包;选项 C 中 java.util 包提供使用程序类和集合类,如系统特性定义和使用、日期函数类、集合 Collection、Map、List、Array 等常用工具类;java.awt 包是封装抽象窗口工具包,提供构建和管理用户图形界面功能,为本题正确答案。10.下列关于项目中“移出”文件的说法,正确的是( )。(分数:2.00)A.被移出的文件将直接从磁盘中删除B.被移出的文件将不能被任何项目添加C.被移出的文件只是将文件移出项目,但文件保留在磁盘中 D.被移出的文件,以后不能再次添加到原项目中,但可以添加到其他项目中解析:
27、解析 在数据库中移除不代表删除,从项目中移除是指文件只是从项目中移除,但文件还保存在磁盘中,如果需要仍然可再次添加到此项目中。当在项目中删除文件后,文件才能被添加到其他的项目中。所以答案选择 C。11.下面( )正确表示了 int 类型的聚会范围。(分数:2.00)A.-2162 16-1B.-2312 31-1 C.-2322 32-1D.-2642 64-1解析:解析 该题考查对基本数据类型的长度范围的掌握。在 Java 语言中,每一种基本类型的长度范围是固定的,它不随着机器字长的改变而改变。对于整型(int),它的长度是 4 字节,而且它可正可负,所以其取值范围应该是-2 312 31-
28、1。12.下述关于数据库系统的叙述中,正确的是( )。(分数:2.00)A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据解析:解析 数据库系统会减少数据冗余,但不可能避免所有冗余。13.执行下列程序时,会产生什么异常( )。public class Testpublic static void main(String args)int d=101;int b=220;long a=321;System.Out.println(a-b)/(a-b-d);(分数:2.00)A.ArrayIndexOutO
29、fBoundsExceptionB.NumberFormatExceptionC.ArithmeticException D.EOFException解析:解析 本题考查异常的概念。首先应该掌握题目选项中给出的都是什么类型的异常。选项 A 是当访问数组中非法元素时引发,出现数组负下标异常。选项 B 是格式化数字异常。选项 C 是算术异常,如程序触发分母为 0,或用 0 取模时出现。选项 D 是文件已结束异常。当 Java 执行这个算术表达式的时候,由于求模运算的分母是 a-b-d=0,就会构造一个 ArithmeticException 的异常对象来使程序停下来并处理这个错误的情况,在运行时抛
30、出这个异常。默认的处理器打印出 Exception 的相关信息和发生异常的地点。14.下面程序段的输出结果是( )。class Testpublic static void main(String args)MyThread t=new MyThread();t.displayOutput(“t has been createD“);t.start();Class MyThread extends Threadpublic void displayOutput(String s)System.out.println(s);public void run()displayOutput(“t is
31、 running.“);(分数:2.00)A.t has been created.B.t has been created.T is running. C.t is running.D.编译出错解析:解析 start()方法就可以启动该线程,线程也就处于可运行状态 Runnable。Start()方法产生了线程运行需要的系统资源,并调用线程体,也就是 run()方法,使得线程可以进入运行状态。程序运行时首先创建一个新的线程对象 t,并调用 displayOutput(Strings)方法输出 t has been created。t.start()方法调用 run()方法,输出 t is r
32、unning,所以正确答案为选项 B。15.下列选项成员变量声明正确的是( )。(分数:2.00)A.public protected final int i;B.abstract class F1.)C.private double height; D.double weight解析:解析 本题考查对成员变量的声明。成员变量的声明格式为:修饰符 type 变量名;其中 type 可以是 java 语言中的任意数据类型,而修饰符可以是public、protected,private,static,final,transient,volatile 等。选项 A 错误,成员变量不能同时声明成 pu
33、blic 和 protected。选项 B 是类的声明格式,并不是成员变量的声明。成员变量声明应以“;“结尾,选项 D 错误。选项 C 声明了一个私有的 double 型成员变量,为正确答案。16.有下列二叉树,对此二叉树进行后序遍历的结果为( )。(分数:2.00)A.B. C.D.解析:解析 对二叉树的后序遍历是指:先访问左子树,然后访问右子树,最后访问根结点,并且在访问其左、右子树时先访问其左、右子树,最后访问根结点。17.下列程序的输出结果是( )。public class ArrayTestpublic static void main(String args)intintArray
34、=new int3for(int i=0;i3;i+)intArrayi=i+2;system.out.println(“IntArray“+i+“=intArrayi);System.out.println(“-“);int arrLen=4;IntArray=new intarrLen;For(int j=intArray.length;j=0;j-)intArray-i=j*3;system.out.println(“hello“+intArrayj);(分数:2.00)A.编译未通过B.编译通过,但运行错误 C.可以运行,但有错误D.以上都不对解析:解析 这是一道考查数组引用的题,目的
35、是考查如何在程序中引用初始化后的数组。引用的方式为 arrayNameindex,其中 index 为数组的下标,可以为整数、变量和表达式,范围从 0 开始,一直到数组的长度减 1。在 Java 语言中,是要对数组下标进行检查的。因此,当程序运行到数组的长度值时,就发生了越界现象。18.没 R 是一个 2 元关系,S 是一个 3 元关系,则下列运算中正确的是( )。(分数:2.00)A.R-SB.RS C.RSD.RS解析:解析 关系的交()、并()和差(-)运算要求两个关系是同元的,显然作为二元的 R 和三元 S 只能做笛卡儿积运算。19.下列程序的运行结果是( )。Public class
36、 sunPublic static void main(String args)int x=4,y=0;if(Math.pow(x,2)=16)y=x;if(Math.pow(x,2)15)y=1/x;if(Math.pow(x,2)15)y=(int)Math.pow(x,2)+1;system.out.println(y);(分数:2.00)A.4B.17 C.18D.0.25解析:解析 本题是考查对 if-else 分支结构和几个标准函数的理解。pow(x,y)方法是 x 的 y 次幂,程序中 pow(x,2)满足第 1 个 if 语句和第 3 个 if 语句,条件变量 y 将被赋值两次
37、,但对于同一个变量来说,只能存储最后一个所赋的值。20.结构化分析方法是面向( )的自顶向下逐步求精进行需求分析的方法。(分数:2.00)A.对象B.数据结构C.数据流 D.目标解析:解析 结构化分析方法是面向数据流进行需求分析的方法,采用自顶向下、逐层分解、建立系统的处理流程。21.Java 语言中所有的简单数据类型都被包含在( )中。(分数:2.00)A.java.sqlB.java.awtC.java.lang D.java.math解析:解析 Java 语言中,所有的简单数据类型都被包含在包 java.lang 中。22.下面程序段的输出结果为( )。public class Test
38、public static void main(String args)booleana,b,c;a=(35);b=(a=true);System.out.println(“a=“+a+“b=“+b);c=(b=false);System.out.println(“b=“+b+“c=“+c);(分数:2.00)A.a=true b=falseb=true c=trueB.a=true b=falseb=true c=falseC.a=true b=trueb=true c=false D.a=false b=falseb=true c=false解析:解析 本题考查关系运算符和=。题目中 a=
39、(35);比较 3 和 5 的大小,因为 35,返回true 给 a;b=(a=true);判断 a 是否为真,因为 a 确实为真,返回 true 给 b;c=(b=false);判断 b 是否为假,因为 b 不为假,返回 false 给 c。最后结果 a=true,b=true,b=true,c=false,选项 C 正确。23.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。(分数:2.00)A.控制流 B.加工C.数据存储D.源和终解析:解析 数据流图简称 DFD,它以图形的方式描绘数据在系统中流动和处理的过程,
40、由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。数据流图有 4 种基本图形符号:箭头表示数据流;椭圆表示加工;双杠表示存储文件(数据源);方框表示数据的源点或终点。24.在编写 Java 程序的时候,如果不为类的成员变量定义初始值,Java 会给它们设置默认值,下列说法中不正确的是( )。(分数:2.00)A.Byte 的默认值是 0B.int 的默认值是 0C.long 的默认值是 0.0L D.float 的默认值是 0.0f解析:解析 Long 类型的默认值为 0L,而不是 0.0L。25.下列叙述中,正确的是( )。(分数:2.00)A.声明变量时必须指定一个类型 B.Jav
41、a 认为变量 number 与 Number 相同C.Java 中唯一的注释方式是“/”D.源文件中 public 类可以有 0 个或多个解析:解析 本题考查 Java 的基本概念。Java 的基本概念是考试重点,应该重视。在 Java 中,声明变量时,必须指定类型,否则将会出错,所以选项 A 说法正确。Java 标识符是区分大小写的,变量 number和 Number 对 Java 来说是不同的,选项 B 说法错误。Java 中有三种注释方式:文档注释/*/,被javadoc 处理,可以建立类的一个外部说明性文件;C 语言注释风格/*/,用于去掉当前不再使用但仍想保留的代码等;单行注释/,格
42、式上要求注释符/后必须紧跟一个空格,然后才是注释信息,选项 C 说法错误。源文件中 public 类可以有 0 个或 1 个,不能多于 1 个,选项 D 说法错误。26.下面程序段的输出结果是( )。public class Testpublic static void main(String args)int a,b;for(a=1,b=1;a=100;a+)if(b=10)break;if(b%2=1)b+=2;continue;System.out.println(a);(分数:2.00)A.5B.6 C.7D.101解析:解析 本题考查 for 循环和 if 语句的嵌套以及 break
43、 语句和 continue 语句的用法。第 1 个 if 语句的意义为:当 b=10 时退出 for 循环,第 2 个 if 语句的意义为:如果 b%2=1,则 b 的值加 2 并退出本次循环。本程序当 b 的值分别为 1、3、5、7 和 9 的时候执行 5 次循环,此时 a=5,b=9,当执行第 6 次循环时,a 的值为 6,但 b=11,所以退出循环,程序结束。27.下列关于 Applet 生命周期的说法,正确的是( )。(分数:2.00)A.voidinit()在 Applet 下载前调用B.voidstart()只在初始化之后调用C.voidstop()在关闭浏览器时调用D.stop(
44、)总在 voiddestroy()之前被调用 解析:解析 本题考查 Applet 生命周期的概念。Applet 生命周期是考试重点考查内容,应该加以重视。init()在 Applet 下载时调用,而不是下载前调用,选项 A 错误。start()在初始化之后以及在 Applet 被重新访问时调用,不仅仅只是在初始化之后调用,选项 B 错误。stop()在停止执行时调用,关闭浏览器时调用的是 destroy(),选项 C 错误。destroy()在关闭加载 Applet 的浏览器从系统中撤出时调用,此时Applet 必然调用 stop()方法停止其运行,然后才能调用 destroy()方法从内存卸
45、载并释放该 Applet 的所有资源。注意理解 Applet 的执行过程。28.用来导入已定义好的类或包的语句是( )。(分数:2.00)A.mainB.import C.public classD.class解析:解析 本题考查 Java 中的 import 语句。Java 中使用 import 语句来导入已定义好的类或包,需要注意 Java 语言的 java.lang 包是编译器自动导入的,编程时如果使用该包中的类,可省去 import 导入,如果要使用其他包中的类,必须用 import 导入。29.自定义的异常类可从( )类继承。(分数:2.00)A.ErrorB.AWTErrorC.V
46、irtualMachineErrorD.Exception 及其子集 解析:解析 Java 语言中 Throwable 类分为 Error 和 Exception 两个子类。自定义的异常类是从:Exception 及其子集类继承的。30.下列属于合法的 Java 标识符是( )。(分数:2.00)A.“ABC“B.j3;j-)if(j%3! =0)j-;-j;-j;System.out.println(j);(分数:2.00)A.63B.74 C.62D.73解析:解析 该题考查对 for 循环的理解。当 j=10 时,满足条件 j3,由于 for 循环中 j-执行了 1次,j 的值为 9,执
47、行 if 语句,j%3=0 不满足条件,继续向下执行 2 次-j,j 的值为 7:当 j=7 时,满足条件 j3,由于 for 循环中 j-执行了 1 次,j 的值为 6,执行 if 语句,i%3=0 不满足条件,继续向下执行 2 次-j,j 的值为 4。32.设 a=8,则表达式 a2 的值是( )。(分数:2.00)A.1B.2 C.3D.4解析:解析 本题具体考查对位运算符中无符号右移运算符的掌握。无符号右移运算符“用于将一个数的各二进制位全部无符号右移若干位,与运算符“不同的是左补 0。在本题中,8 的二进制表示 1000,右移两位后变成了 0010,对应的十进制数是 2。33.关于
48、Applet 执行的操作,下面说法正确的是( )。(分数:2.00)A.在运行时调用其他程序B.可以进行文件读/写操作C.不能装载动态连接库和调用任何本地方法 D.试图打开一个 socket 进行网络通信,但是所连接的主机并不是提供 Applet 的主机解析:解析 本题考查 Applet 的概念。Java 虚拟机为 Applet 提供能够良好运行的沙箱,一旦它们试图离开沙箱则会被禁止。由于 Applet 是通过网络传递的,这就不可避免地使人想到会发生安全问题。例如,有人编写恶意程序通过小应用程序读取用户密码并散播到网络上,这将会是一件非常可怕的事情。所以,必须对小应用程序进行限制。浏览器禁止 Applet 运行任何本地可运行程序,选项 A 错误。禁止加载本地库或方法,Applet 只能使用自身的代码或 Applet。浏览器提供的 JavaAPI,不允许装载动态连接库和调用