1、计算机二级 JAVA 分类模拟题 193 及答案解析(总分:60.20,做题时间:90 分钟)一、选择题(总题数:35,分数:60.20)1.下列程序的运行结果是_。 public class Test public static void main(String args) int percent=10; tripleValue(percent); System.out.println(percent); public static void tripleValue(int x) x=3*x; (分数:1.00)A.40B.30C.20D.102.阅读如下程序。 import javax.s
2、wing.JOptionpane; public class Comparison public static void main(String args) string firstNumber,/用户输入第 1 个数据变量 secondNumber,/用户输入第 2 个数据变量 resuit;/输出结果变量 int numberl,/用于比较的第 1 个数 number2,/用于比较的第 2 个数 /用户输入第 1 个数据的字符串 firstNumber=JOptionPane.showInputDialog(“输入第 1 个整数:“); /用户输入第 2 个数据的字符串 secondNum
3、ber=JOptionPane.showInputDialog(“输入第 2 个整数:“); /将字符串转换为整数类型 number1=Integer.parseInt(firstNumber); number2=Integer.parseInt(secondNumber); /初始化结果变量 /比较两个数据 if(number1=number2) result+=numberl+“=“+number2; if(number1!=number2) result+=number1+“!=“+number2; if(number1number2) result=resuit+“n“+number1
4、+“+number2; if(number1number2) result=result+“/n“+number1+“+number2; if(number1=number2) result=result+“/n“+number1+“=“+number2; if(number1=number2) result=result+“/n“+number1+“=“+number2; /显示结果 JOptionPane.showMessageDialog(null.result,“比较结果“, JOptionPane.INFORMATION MESSAGE); System.exit(0); 为使程序能
5、正确运行并得到合理的输出结果,初始化结果变量语句(下划线处)应是_。(分数:2.00)A.result=“B.result=ullC.result=number1D.result=number23.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是_。(分数:1.00)A.1:1 联系B.m:1 联系C.1:m 联系D.m:n 联系4.在 Applet 中画图、画图像、显示字符串用到的方法是_。(分数:2.00)A.paint()B.init()C.stopD.draw()5.某二叉树有 5 个度为 2 的结点,则该二叉树中的叶子结点数是(
6、分数:2.00)A.10B.8C.6D.46.在 E-R 图中,用来表示实体联系的图形是 _ 。(分数:2.00)A.椭圆图B.矩形C.菱形D.三角形7.switch 语句不能用于下列 _ 数据类型。(分数:1.00)A.doubleB.byteC.shortD.char8.Java 语言有自动收集垃圾的功能,会周期性地回收一些长期不用的对象占用的内存。下列选项中为对象清除路径的是 _ 。 依靠 Java 的垃圾回收机制回收内存 调用 System.gc(),请求垃圾回收 Java 系统开始运行时,自动调用 javaObjectfinalize()释放内存 在程序中调用重写的 finalize
7、()方法释放系统资源,其格式为: protected void finalize() throws throwable super, finalize (); (分数:2.00)A., B., . , C. , D., . 9.下列关于类、包和源文件的描述中,不正确的一项是_。(分数:2.00)A.一个文件可以属于一个包B.一个类可以属于一个包C.一个包可包含多个文件D.一个包只能含有一个类10.Java 的核心包中,提供编程应用的基本类的包是_。(分数:2.00)A.java.langB.java.utilC.java.appletD.java.rmi11.有下列二叉树,对此二叉树前序遍历的
8、结果为 _ 。 (分数:2.00)A.XZCYABB.XYZABCC.XYABCZD.XYAZBC12.在数据库系统中,用户所见的数据模式为 _ 。(分数:2.00)A.概念模式B.外模式C.内模式D.物理模式13.按照 Java 的标识符命名规则,下列表示一个类的标识符正确的是_。(分数:2.00)A.HelloworldB.HelloWorldC.helloworldD.helloWorld14.Java 中用于提供 Java 语言、Java 虚拟机的核心类和接口的包的是_。(分数:2.00)A.java.io 包B.java.applet 包C.java.lang 包D 包15.数据库的
9、物理设计是为一个给定的逻辑结构选取一个适合应用环境的_的过程,包括确定数据库在物理设备上的存储结构和存储方法。(分数:2.00)A.逻辑结构B.物理结构C.概念结构D.层次结构16.在 Java 中,实现用户界面功能的包是_。(分数:1.80)A.java. appletB.javax. transactionC.java. utilD.java. awt17.线性表中经常采用的两种存储结构是_。(分数:2.00)A.顺序存储结构和链式存储结构B.散列方法和索引方式C.链表存储结构和数组D.线性存储结构和非线性存储结构18.下列特点中不属于 Java 的是_。(分数:2.00)A.多线程B.多
10、继承C.跨平台D.动态性19.在 Java 中,线程是_。(分数:1.80)A.分时的B.抢占式的C.非抢占式的D.非分时的20.循环语句的循环体部分,不可以是_。(分数:1.00)A.单一的一条语句B.大括号 括起的代码块C.复合语句D.汉字语句21.Java 语言中,对当前对象的父类对象进行引用的关键字是_。(分数:1.80)A.caseB.superC.charD.break22.下列概念中不包括任何实现,与存储空间没有任何关系的是_。(分数:1.00)A类B.接口C.抽象类D.对象23.在 Java 语言中, _ 是最基本的元素。(分数:2.00)A.方法B包C.对象D.接口24.在黑
11、盒测试方法中,设计测试用例的主要根据是_。(分数:2.00)A.程序内部逻辑B.程序流程图C.程序数据结构D.程序外部功能25.阅读下面代码 class Test implements Runnable public int run() int i=0; while(true) i+; System.out.println(“i=“+i); 上述代码的编译结果是(分数:2.00)A.程序通过编译,并且 run()方法可以正常输出递增的 i 值B.程序通过编译,调用 run()方法将不显示任何输出C.程序不能通过编译,因为 while 的循环控制条件不能为 trueD.程序不能通过编译,因为 r
12、un()方法的返回值类型不是 void26.在描述软件的结构和过程中,提出了以下的设计表达工具,其中不正确的说法是 _(分数:1.00)A.图形表达工具:流程图、NS 图等B.文字表达工具:伪代码、PDL 等C.表格表达工具:判定表等D.系统设计表达工具:用于表达软件过程27.下列各选项中属于 Java 保留字的是_。(分数:2.00)A.TRUEB.NULLC.FALSED.null28.容器类 java. awt. container 的父类是_。(分数:1.80)A.java. awt. WindowB.java. awt. ComponentC.java. awt. FrameD.ja
13、va. awt. Panel29.下列选项_不是 PilterInputStream 的子类。(分数:3.00)A.BufferedInputStreamB.CheckedInputStreamC.PushbacklnloutStreamD.FilelnputStream30.阅读下面程序 class Test implements Runnable public static void main(String args) Test t=new Test(); t.start(): public void run() 下列关于上述程序的叙述正确的是(分数:2.00)A.程序不能通过编译,因为
14、start()方法在 Test 类中没有定义B.程序编译通过,但运行时出错,提示 start()方法没有定义C.程序不能通过编译,因为 run()方法没有定义方法体D.程序编译通过,且运行正常31.设循环队列的存储空间为 Q(1:35),初始状态为 front=rear=35。现经过一系列入队与出队运算后,front=15,rear=15,则循环队列中的元素个数为_。(分数:2.00)A.15B.16C.20D.0 或 3532.阅读下列利用递归来求 n!的程序_。 class FactorialTest static long Factorial(int n)/定义 Factorial()方
15、法 if(n=1) return 1; else return n*Factorial(_); public static void main(String a)/main()方法 int n=8; System.out.println(n+“!=“+Factorial(n); 为保证程序正确运行,在下画线处应该填入的参数是_。(分数:1.00)A.n-1B.n-2CnD.n+133.如下程序的输出结果是( )。 public class Test void printValue(int m) do System.out.println(“The value is“+m); while( -m
16、10) public static void main(String args) int i=10; Test t=new Test(); t.printValue(i); (分数:1.00)A.The value is 8B.The value is 9C.The value is 10D.The value is 1134.下列程序的运行结果是_。 public class Test public static void main(String args) intm=new int1,2,3,4,5,6,7,8; int sum=0; for(int i=0;i8;i+) sum+=mi;
17、 if(i=3)break; System.out.println(sum); (分数:1.00)A.3B.6C.10D.3635.关于 Applet 执行的操作,下面说法正确的是(分数:1.00)A.在运行时调用其他程序B.可以进行文件读写操作C.不能装载动态连接库和调用任何本地方法D.试图打开一个 socket 进行网络通信,但是所连接的主机并不是提供 Applet 的主机计算机二级 JAVA 分类模拟题 193 答案解析(总分:60.20,做题时间:90 分钟)一、选择题(总题数:35,分数:60.20)1.下列程序的运行结果是_。 public class Test public st
18、atic void main(String args) int percent=10; tripleValue(percent); System.out.println(percent); public static void tripleValue(int x) x=3*x; (分数:1.00)A.40B.30C.20D.10 解析:解析 static 关键字应用的场合有:用来修饰类中定义的变量,这样的变量称为类变量或静态变量。可以用来修饰类中定义的方法,这样的方法称为静态方法。用来修饰初始化语句块,这样的语句块常称为静态初始化语句块。static 在这里表示这个方法为类方法,不属于任何对象
19、实例,而是类所有,描述对象的共有动作,可以用类名直接调用。在调用了 tripleValue 函数之后,函数的值没有返回,所以 percent 的值还是 10。2.阅读如下程序。 import javax.swing.JOptionpane; public class Comparison public static void main(String args) string firstNumber,/用户输入第 1 个数据变量 secondNumber,/用户输入第 2 个数据变量 resuit;/输出结果变量 int numberl,/用于比较的第 1 个数 number2,/用于比较的第
20、2 个数 /用户输入第 1 个数据的字符串 firstNumber=JOptionPane.showInputDialog(“输入第 1 个整数:“); /用户输入第 2 个数据的字符串 secondNumber=JOptionPane.showInputDialog(“输入第 2 个整数:“); /将字符串转换为整数类型 number1=Integer.parseInt(firstNumber); number2=Integer.parseInt(secondNumber); /初始化结果变量 /比较两个数据 if(number1=number2) result+=numberl+“=“+n
21、umber2; if(number1!=number2) result+=number1+“!=“+number2; if(number1number2) result=resuit+“n“+number1+“+number2; if(number1number2) result=result+“/n“+number1+“+number2; if(number1=number2) result=result+“/n“+number1+“=“+number2; if(number1=number2) result=result+“/n“+number1+“=“+number2; /显示结果 JO
22、ptionPane.showMessageDialog(null.result,“比较结果“, JOptionPane.INFORMATION MESSAGE); System.exit(0); 为使程序能正确运行并得到合理的输出结果,初始化结果变量语句(下划线处)应是_。(分数:2.00)A.result=“ B.result=ullC.result=number1D.result=number2解析:解析 本程序的功能是比较两个输入数据 number1 和 number2 的大小,结果存储在 result 中并输出,所以初始化时 result 应该是空串,即 result=“。3.公司中有
23、多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是_。(分数:1.00)A.1:1 联系B.m:1 联系C.1:m 联系 D.m:n 联系解析:解析 实体间的联系有一对一(1:1)、一对多(1:m)和多对多(m:n),没有多对一(m:1)。题目中,一个部门可以有多名职员,而每个职员只能属于一个部门,显然,部门和职员间是一对多的联系。4.在 Applet 中画图、画图像、显示字符串用到的方法是_。(分数:2.00)A.paint()B.init() C.stopD.draw()解析:5.某二叉树有 5 个度为 2 的结点,则该二叉树中的叶子结点数是(
24、分数:2.00)A.10B.8C.6 D.4解析:解析 对于任何一棵二叉树,其终端结点(叶子结点)数为度为 2 的结点数+1。所以该二叉树的叶子结点数等于 5+1=6。6.在 E-R 图中,用来表示实体联系的图形是 _ 。(分数:2.00)A.椭圆图B.矩形C.菱形 D.三角形解析:解析 E-R 图也即实体联系图(EntityRelationshipDiagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型,构成 E-R 图的基本要素是实体型、属性和联系,其表示方法为:实体型(Entity):用矩形表示,矩形框内写明实体名;属性(Attribute):用椭圆形表示,并用无
25、向边将其与相应的实体连接起来;联系(Relationship):用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n 或 m:n):7.switch 语句不能用于下列 _ 数据类型。(分数:1.00)A.double B.byteC.shortD.char解析:8.Java 语言有自动收集垃圾的功能,会周期性地回收一些长期不用的对象占用的内存。下列选项中为对象清除路径的是 _ 。 依靠 Java 的垃圾回收机制回收内存 调用 System.gc(),请求垃圾回收 Java 系统开始运行时,自动调用 javaObjectfinalize(
26、)释放内存 在程序中调用重写的 finalize()方法释放系统资源,其格式为: protected void finalize() throws throwable super, finalize (); (分数:2.00)A., B., . , C. , D., . 解析:解析 本题考查 Java 语言自动回收垃圾的功能,垃圾回收用于对象的清除,题中给出的 4 种垃圾回收方法,都是可行的。9.下列关于类、包和源文件的描述中,不正确的一项是_。(分数:2.00)A.一个文件可以属于一个包B.一个类可以属于一个包C.一个包可包含多个文件D.一个包只能含有一个类 解析:10.Java 的核心包中
27、,提供编程应用的基本类的包是_。(分数:2.00)A.java.lang B.java.utilC.java.appletD.java.rmi解析:解析 Java.lang 包封装所有编程应用的基本类,如 Object、Class、String、Integer 等。11.有下列二叉树,对此二叉树前序遍历的结果为 _ 。 (分数:2.00)A.XZCYABB.XYZABCC.XYABCZD.XYAZBC 解析:解析 对二叉树的前序遍历是指:先访问根结点,然后访问左子树,最后访问右子树,并且,在访问左、右子树时,先访问根结点,再依次防问其左、右子树。12.在数据库系统中,用户所见的数据模式为 _
28、。(分数:2.00)A.概念模式B.外模式 C.内模式D.物理模式解析:13.按照 Java 的标识符命名规则,下列表示一个类的标识符正确的是_。(分数:2.00)A.HelloworldB.HelloWorld C.helloworldD.helloWorld解析:解析 本题考查 Java 类名的命名规则。类名与接口名都采用完整的英文描述,并且所有单词的第一个字母大写;包采用完整的英文描述符,都是由小写字母组成的;类的变量采用完整的英文描述,第一个字母小写,任何中间单词的首字母大写;常量名全部采用大写字母,单词之间用下画线分隔。应该掌握命名规则,不仅因为它是考试重点,同时也是养成良好编程习惯
29、的基础。14.Java 中用于提供 Java 语言、Java 虚拟机的核心类和接口的包的是_。(分数:2.00)A.java.io 包B.java.applet 包C.java.lang 包 D 包解析:解析 java.lang 包:封装编程要用的所有基本类,如Object、Class、System、Integer、Thread 等。对于任何一个 Java 程序来说,这些类几乎是必不可少的。java.lang 还包含了许多由 Java 虚拟机发出的异常和一些用于访问系统资源的类,如 ClassLoader 等。15.数据库的物理设计是为一个给定的逻辑结构选取一个适合应用环境的_的过程,包括确定
30、数据库在物理设备上的存储结构和存储方法。(分数:2.00)A.逻辑结构B.物理结构 C.概念结构D.层次结构解析:解析 数据库的物理设计的主要目的是对数据库内部物理结构做调整并选择合理的存取路径,以提高数据库的访问速度及有效利用的存储空间。16.在 Java 中,实现用户界面功能的包是_。(分数:1.80)A.java. appletB.javax. transactionC.java. utilD.java. awt 解析:解析 本题考查考生对 Java 包功能的理解。选项 A 中 java. applet 包是为 Applet 提供执行需要的所有类,主要访问 Applet 内容的通信类;选
31、项 B 中 transaction 包是属于 javax 而不是 java,javax. transaction 包是提供事务处理所需要的包;选项 C 中 java. util 包提供使用程序类和集合类,如系统特性定义和使用、日期函数类、集合 Collection、Map、list、Array 等常用工具类;java. awt 包是封装抽象窗口工具包,提供构建和管理用户图形界面功能,为本题正确答案。17.线性表中经常采用的两种存储结构是_。(分数:2.00)A.顺序存储结构和链式存储结构 B.散列方法和索引方式C.链表存储结构和数组D.线性存储结构和非线性存储结构解析:解析 线性表的存储通常有
32、两种存储结构:顺序存储结构和链式存储结构。18.下列特点中不属于 Java 的是_。(分数:2.00)A.多线程B.多继承 C.跨平台D.动态性解析:解析 Java 的基本特点有简单易学、面向对象、分布式计算、稳健性、安全性、跨平台和可移植性、解释执行、高效性、多线程、动态性等,因此答案 B 不是 Java 的特点,符合题意。19.在 Java 中,线程是_。(分数:1.80)A.分时的B.抢占式的 C.非抢占式的D.非分时的解析:解析 本题考查线程的调度。Java 的线程调度策略是一种基于优先级的抢占式调度,选项 B 正确。Java 这种抢占式调度可能是分时的,即每个等待池中的线程轮流执行,
33、也可以不是,即线程逐个运行,具体采用哪种方式,由具体 JVM 而定。线程一般通过使用 sleep()等方法保证给其他线程运行时间。20.循环语句的循环体部分,不可以是_。(分数:1.00)A.单一的一条语句B.大括号 括起的代码块C.复合语句D.汉字语句 解析:21.Java 语言中,对当前对象的父类对象进行引用的关键字是_。(分数:1.80)A.caseB.super C.charD.break解析:解析 当子类隐藏了父类的变量,并重写了父类方法后,又要使用父类变量或父类被重写的方法时,可以通过 super 来实现对父类变量的访问和对父类方法的调用。22.下列概念中不包括任何实现,与存储空间
34、没有任何关系的是_。(分数:1.00)A类B.接口 C.抽象类D.对象解析:解析 接口是一种只含抽象方法或常量的一种特殊的抽象类。它不包含成员变量和方法实现,只包含常量和方法的定义。接口的主要功能是:不管类的层次,可实现互不相关的类具有相同的行为;通过接口说明多个类所需实现的方法;通过接口可以了解对象的交互界面,无须了解对象所对应的类。接口不包括任何实现,所以与存储空间没有任何关系。因此,本题的正确答案是 B。23.在 Java 语言中, _ 是最基本的元素。(分数:2.00)A.方法B包C.对象 D.接口解析:解析 作为面向对象的编程语言,Java 语言中最基本的元素就是对象,一切概念都是以
35、对象为基础的,因此选项 C 为正确答案。24.在黑盒测试方法中,设计测试用例的主要根据是_。(分数:2.00)A.程序内部逻辑B.程序流程图C.程序数据结构D.程序外部功能 解析:解析 软件测试方法常用的包括黑盒测试和白盒测试,白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构来测试程序的。黑盒测试也称功能测试或数据驱动测试,它是通过测试来检测每个功能是否能正常使用,主要着眼于程序外部结构,不考虑程序的内部结构和内部特征,而只是根据软件界面和软件功能设计测试用例。25.阅读下面代码 class Test implements Runnable public int run() int
36、i=0; while(true) i+; System.out.println(“i=“+i); 上述代码的编译结果是(分数:2.00)A.程序通过编译,并且 run()方法可以正常输出递增的 i 值B.程序通过编译,调用 run()方法将不显示任何输出C.程序不能通过编译,因为 while 的循环控制条件不能为 trueD.程序不能通过编译,因为 run()方法的返回值类型不是 void 解析:解析 本程序是通过实现 Runnable 接口创建进程。其中 run()方法的类型在接口中已经定义好为void,而本题的程序中修改为了 int,所以编译不会通过。26.在描述软件的结构和过程中,提出了
37、以下的设计表达工具,其中不正确的说法是 _(分数:1.00)A.图形表达工具:流程图、NS 图等B.文字表达工具:伪代码、PDL 等C.表格表达工具:判定表等D.系统设计表达工具:用于表达软件过程 解析:27.下列各选项中属于 Java 保留字的是_。(分数:2.00)A.TRUEB.NULLC.FALSED.null 解析:解析 在 Java 中,常量 null、false、true 都是小写的;所以 A、B 和 C 选项中的字符串都不是Java 的保留字。28.容器类 java. awt. container 的父类是_。(分数:1.80)A.java. awt. WindowB.java
38、. awt. Component C.java. awt. FrameD.java. awt. Panel解析:解析 本题考查 Java 中容器类的概念。Container 是一个类,实际上是 Component 的子类,因此容器本身也是一个构件,具有构件的所有性质,另外还具有放置其他构件和容器的功能。构件类(Component)是 Java 的图形用户界面的最基本的组成部分。29.下列选项_不是 PilterInputStream 的子类。(分数:3.00)A.BufferedInputStreamB.CheckedInputStreamC.PushbacklnloutStreamD.Fil
39、elnputStream 解析:解析 Java 中的 FilterlnputStream 的子类有 BufferedlnputStream、CheckedlnputStream、 CipherlnputStream、DatalnputStream、DigestlnputStream、LineNumberlnputStream、PushbackInputStream 等。30.阅读下面程序 class Test implements Runnable public static void main(String args) Test t=new Test(); t.start(): public
40、 void run() 下列关于上述程序的叙述正确的是(分数:2.00)A.程序不能通过编译,因为 start()方法在 Test 类中没有定义 B.程序编译通过,但运行时出错,提示 start()方法没有定义C.程序不能通过编译,因为 run()方法没有定义方法体D.程序编译通过,且运行正常解析:解析 创建线程有两种方法:实现 java.lang.Runnable 接口;继承 Thread 类并重写 run()方法。start()是 Thread 类中的方法,而本程序中的 Test 类实现了 Runnable 接口,Runnable 接口中只定义了一个抽象方法 run(),故 Test 类不
41、能调用 start()方法。编译时会出现 start()方法未定义的错误。31.设循环队列的存储空间为 Q(1:35),初始状态为 front=rear=35。现经过一系列入队与出队运算后,front=15,rear=15,则循环队列中的元素个数为_。(分数:2.00)A.15B.16C.20D.0 或 35 解析:解析 此题目主要考查数据结构中队列的存储规则,队列的元素个数为 rear-front,如果差是非正数,加队列的长度。当队首与队尾指向同一空间时,队列可能为空,也可能为满,所以选择 D。32.阅读下列利用递归来求 n!的程序_。 class FactorialTest static
42、long Factorial(int n)/定义 Factorial()方法 if(n=1) return 1; else return n*Factorial(_); public static void main(String a)/main()方法 int n=8; System.out.println(n+“!=“+Factorial(n); 为保证程序正确运行,在下画线处应该填入的参数是_。(分数:1.00)A.n-1 B.n-2CnD.n+1解析:解析 很明显,n!要求应该是 n-1。选择 A。33.如下程序的输出结果是( )。 public class Test void pri
43、ntValue(int m) do System.out.println(“The value is“+m); while( -m10) public static void main(String args) int i=10; Test t=new Test(); t.printValue(i); (分数:1.00)A.The value is 8B.The value is 9C.The value is 10 D.The value is 11解析:解析 此题考查的是 do-while 循环和“-”操作符的知识。do-while 最少执行一次,在执行完do 中的内容后,判断 while
44、 中的条件是否为 true。如果为 true,就再执行 do 中的内容,然后再进行判断。以此类推,直到 while 的判断为 false 时退出循环,执行循环后面的内容。而“-”操作符的规则是,变量右边的“-”将先进行运算,然后才使变量的值减一。而在变量左边的“-”,则先将变量的值减一再运算。本程序中 I 的值为 10,当程序运行到 do-while 循环时,程序先执行一次循环后然后再做判断,因此选 C。34.下列程序的运行结果是_。 public class Test public static void main(String args) intm=new int1,2,3,4,5,6,7
45、,8; int sum=0; for(int i=0;i8;i+) sum+=mi; if(i=3)break; System.out.println(sum); (分数:1.00)A.3B.6C.10 D.36解析:解析 该程序的功能是将 m 数组中的前四个数相加,将和保存在 sum 中,最后输出 sum 的值。因为程序中 for 循环停止的条件有两个,一个是当 i8 的时候,另一个是当 i=3 的时候,即运行到 m 数组中第四个值的时候,可以跳出 for 循环。程序执行的是后者,所以输出的结果是 10。35.关于 Applet 执行的操作,下面说法正确的是(分数:1.00)A.在运行时调用
46、其他程序B.可以进行文件读写操作C.不能装载动态连接库和调用任何本地方法 D.试图打开一个 socket 进行网络通信,但是所连接的主机并不是提供 Applet 的主机解析:解析 本题考查 Applet 的概念。Java 虚拟机为 Applet 提供能够良好运行的沙箱,一旦它们试图离开沙箱则会被禁止。由于 Applet 是通过网络传递的,这就不可避免地使人想到会发生安全问题。例如,有人编写恶意程序通过小应用程序读取用户密码并散播到网络上,这将会是一件非常可怕的事情。所以,必须对小应用程序进行限制。浏览器禁止 Applet 执行下列操作:Applet 不能运行任何本地可运行程序,选项 A 错误。禁止加载本地库或方法,Applet 只能使用自身的代码或 Applet 浏览器提供的 Java API,不允许装载动态连接库和调用任何本地方法,选项 C 正确。禁止读写本地计算机的文件系统,选项 B 错误。禁止向提供 Applet 之外的任何土机建立网络连接,如果 Applet 试图打开一个 socket 进行网络通信,所连接的主机必须是提供 Applet 的主机,选项 D 错误。