1、二级 JAVA 笔试-101 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.以下各项中不属于实现完全定制串行化的类要遵守的原则的是( )。(分数:2.00)A.必须要实现 java.io.Extemalizable 接口B.必须实现 writeExternal()方法以保存对象的数据或状态C.必须实现 DataInput()和 DataOutput()方法D.必须定义一个具有 public 访问权限的不带参数的构造方法2.如果类实现了 Runnable 接口,类必须包含的方法是( )。(分数:2.00)A.start()、stop()和
2、run()B.actionPerformed()C.run()D.start()、stop()3.以下各项中不属于 io 包中接口的是( )。(分数:2.00)A.DataInputB.DataOutputC.DataInputStreamD.ObjectInput4.给出下面代码段:public class Testpublic static void main(String args )int m;switch(m)case 0: System.out.println(“case 0“);case 1: System.out.println(“case 1“);break;case 2:
3、break;default: System.out.println(“default“);下列 m 的值能引起输出“default”的是( )。(分数:2.00)A.0B.1C.2D.45.以下各种调试方法中,靠演绎、归纳以及二分法来实现的是( )。(分数:2.00)A.强行排错法B.回溯法C.原因排除法D.静态调试6.下列说法中错误的是( )。(分数:2.00)A.CDC 是 Configuration 的一部分,主要支持嵌入式设备开发B.CLDC 是 Configuration 的一部分,主要支持嵌入式设备开发C.CDC 是针对 32bit 的 CPU,内存为 2MBD.CDLC 针对 1
4、6bit 或 32bit 的 CPU,内存为 128KB 或 256KB7.数据管理技术的发展是与计算机技术及其应用的发展联系在一起的,经历了由低级到高级的发展过程。分布式数据库、面向对象数据库等新型数据库是属于( )。(分数:2.00)A.人工管理阶段B.文件系统阶段C.数据库系统阶段D.高级数据库技术阶段8.一棵含 18 个结点的二叉树的高度至少为( )。(分数:2.00)A.3B.4C.5D.69.下面各项声明中合法的是( )。:long1=4990; :int i=4L;:floatf=1.1; :double d=34.4;(分数:2.00)A.、B.、C.、D.、10.设有以下语句
5、,对 a 数组元素的引用中(其中 0i10),不正确的是( )。int a10=0,1,2,3,4,5,6,7,8,9,*p=a;(分数:2.00)A.ap-aB.*(public class ClassAint x=20;static int y=6;public static void main(String args)ClassB b=new ClassB();b.go(10);System.out.println(“x=“+b.x);class ClassBint x;void go(int y)ClassA a=new ClassA();x=a.y;上述源程序文件的运行结果为( )。
6、(分数:2.00)A.x=10B.x=20C.x=6D.编译不通过12.在一个长度为 n 的线性表中插入一个元素,以下说法不正确的是( )。(分数:2.00)A.最好情况下需要移动的数据元素数目为 0B.最坏情况下需要移动的数据元素数目为 nC.在平均情况下需要移动的数据元素数目为 n/2D.最坏情况下需要移动的数据元素数目为 n/213.下面程序的输出结果是( )。public class Sunpublic static void main(String args)int a=1,2,3,4);int j=1,s=0;for(int i=3;i=0;i-)s=s+ai*j;j=j*10;S
7、ystem.out.println(s);(分数:2.00)A.1234B.21C.43D.432114.下列 API 不属于 java.lang.Math 的是( )。(分数:2.00)A.random()B.abs()C.drawLine()D.sin()15.将小写字母 n 赋值给字符变量 oneChar,正确的操作是( )。(分数:2.00)A.oneChar=/nB.oneChar=“n“C.oneChar=110D.oneChar=N16.以下各项中属于面向对象程序设计语言不同于其他语言的主要特点的是( )。(分数:2.00)A.继承性B.消息传递C.多态性D.静态联编17.有关绘
8、图,下面的说法正确的是( )。:drawArt(int x,int y,int width,int height,ing stanAngle,int arcAngle)是用来指定在矩形的边界内从起始角度到结束角度之间画弧。:drawLine(int x1,int y1,int x2,int y2)用来绘制从点(x1,y1)到(x2,y2)的线段。当计算出线段上点的坐标不是整数时,向该点的右下方取整。:drawRet(int x,int y,int width,int height)绘制指定矩形的轮廓。:drawPloygon(Polygon p)绘制由特定的点指定的多边形。(分数:2.00)A
9、.、B.、C.、D.、18.在结构化方法中,软件功能分解属于下列软件开发中的( )阶段。(分数:2.00)A.详细设计B.需求分析C.总体设计D.编程调试19.下列哪个类声明是正确的? ( )(分数:2.00)A.abstract class G2 extends superClass1,superClass2.B.abstract public class classmates.C.public final class NewClass extends superClass implemnets Interface1.D.public abstract class String.20.下面的
10、代码实现一个简单的 Applet:import java.applet.Applet;import java.awt.*;public class Sample extends Appletprivate String text=“Hello World“;public void init()add(new Label(text);public Sample (String string)text=string;通过下面的 HTML 文件访问:htmltitleSample Applet/titlebodyapplet code=“Sample.class“ width=200 height=
11、200/applet/body/html当编译和运行该小程序时会出现什么结果,请选择正确的答案。( )(分数:2.00)_21.下列用于 Java 解析类文件的命令是( )。(分数:2.00)A.javaB.javacC.javapD.jar22.下列程序的输出结果是( )。public class c3public static void main(String args)char c1=B,c2=C;if(c1+1c2)+C1;System.out.println(c1);(分数:2.00)A.BB.bC.CD.c23.一个 int 类型的常量和一个 byte 类型的常量做加法,则其结果的
12、类型为( )。(分数:2.00)A.intB.byteC.charD.long24.设有 n 元关系 R 及 m 元关系 S,则关系 R 与 S 经笛卡儿积后所得新关系是一个( )元关系。(分数:2.00)A.mB.nC.m+nD.m*n25.在数据结构中,从逻辑上可以把数据结构分成( )。(分数:2.00)A.动态结构和静态结构B.线性结构和非线性结构C.集合结构和非集合结构D.树形结构和图状结构26.下列说法中正确的是( )。(分数:2.00)A.类是变量和方法的集合体B.数组是无序数据的集合C.抽象类可以实例化D.类成员数据必须是公有的27.下列选项中属于 Java 语言的安全性的一项是
13、( )。(分数:2.00)A.动态链接B.高性能C.访问权限D.内存跟踪28.下列语句中使用的布局管理器,当改变容器大小,组件大小不会随着一起改变的选项是( )。(分数:2.00)A.Frame f=new Frame(“FlowLayou“);B.Frame f=new Frame(“BordcrLayout“);C.f=new Frame(“example“);f.setLayout(new BorderLayout();D.setLayout(new GridLayout(2,3);29.建立一个 BoxLayout 对象必须指明的两个参数为( )。(分数:2.00)A.被布局的容器和
14、BoxLayout 的主轴B.BoxLayout 的 x 轴和 BoxLayout 的 y 轴C.BoxLayout 的主轴和 BoxLayout 的 x 轴D.BoxLayout 的主轴和 BoxLayout 的纵轴30.下列哪个选项是不能由标准对话框 JOptionPane 类创建的? ( )(分数:2.00)A.ConfirmDialogB.InputDialogC.JToolBarD.MessageDialog31.为读取的内容进行处理后再输出,需要使用下列哪种流? ( )(分数:2.00)A.File streamB.Pipe streamC.Filter streamD.Rando
15、m stream32.下列代码段的执行结果是( )。public class Testpublic static void main(String args )String s1= new String(“hello“);String s2= new String(“hello“);System.out.println(s1=s2);System.out.println(s1.equal(s2);(分数:2.00)A.true falseB.true trueC.false trueD.false false33.设树 T 的度为 4,其中度为 1、2、3、4 的节点个数分别为 4、2、1、1
16、。则 T 中叶子节点数为( )。(分数:2.00)A.8B.7C.6D.534.下列关于栈的叙述中不正确的是( )。(分数:2.00)A.在栈的两端都能插入或删除数据B.在栈中只能从一端插入或删除数据C.栈中的数据是先进后出的D.栈是一种特殊的线性表35.下面的代码中方法 unsafe()有异常发生,那么可以加在第一行的语句为( )。if(unsafe()/do somethingelse if(safe()/do the other):public void methodName():public void methodName() throw IOException:public void
17、 methodName() throws IOException:public void methodName() throws Exception(分数:2.00)A.、B.、C.、D.、二、填空题(总题数:15,分数:30.00)36.算法的时间复杂度是指 【1】 。(分数:2.00)填空项 1:_37.设有序顺序表为 10,20,30,40,50,60,70,采用折半搜索时,搜索成功的平均搜索长度是 【2】 。(分数:2.00)填空项 1:_38.结构化程序设计的 3 种基本逻辑结构是顺序、 【3】 和循环。(分数:2.00)填空项 1:_39.数据流图的类型有 【4】 和事务型。(分数
18、:2.00)填空项 1:_40.关系中的属性或属性组合,其值能够唯一地标识一个元组,该属性或属性组合可选做为 【5】 。(分数:2.00)填空项 1:_41.要引入 java.nrt 包中的 URL 公有类,需用语句 【6】 。(分数:2.00)填空项 1:_42.赋值表达式的组成是:在赋值运算符的左边是 【7】 ,右边是一表达式。(分数:2.00)填空项 1:_43.Java 线程模型中的数据和 【8】 构成了线程体。(分数:2.00)填空项 1:_44.在 Java 中,字符是作为 Unicode 码来处理的,每个字符用 【9】 个字节表示。(分数:2.00)填空项 1:_45.在 Jav
19、a 新的 I/O 功能中,通过文件锁定来实现多个线程的 【10】 ,避免了可能存在的安全隐患。(分数:2.00)填空项 1:_46. 【11】 是 Swing 新增加的组件,主要功能是把数据以二维表格的形式显示出来。(分数:2.00)填空项 1:_47.阅读下面程序段,SelectItem 应用程序显示从文本域的组合框中进行选择,请在程序中的画线处添上正确的语句使得程序能够正确运行。.JTextField result = new JTextField();JComboBox pick = new JComboBox ();public SelectItem()super (“Select I
20、tem“);pick.addItemListener(this);pick.addItem(“Navigtor“);pick.addItem(“Internet Explorer“);pick.addItem(“Opera“);pick.setEditable(false);result.setHorizontalAlignment(SwingConstants.CENTER);result, setEditable (false);pane.setLayout(new BorderLayout();【12】 pane.add(pick,“Center“);pane.add(result,“S
21、outh“);setContentPane(pane);public void itemStateChanged(ItemEvent evt)Object source = evt.getSource();if(source = pick)Object newPick = evt.getItem();result .setText(newPick.toString()+“ is the selection. “);repaint();(分数:2.00)填空项 1:_48.每个 Applet 必须定义为 【13】 的子类。(分数:2.00)填空项 1:_49.Java 源程序是由类定义组成的,每
22、个程序中可以定义若干个类,但是只有一个类是主类。在 Java Application 中,这个主类是指包含 【14】 方法的类;在 Java Applet 里,这个主类是一个系统类Applet 的子类。(分数:2.00)填空项 1:_50.下列 Applet 在窗口中实现一个不可编辑的 TextField,并且显示“ok”。请填写正确的程序在横线处。import java.applet.Applet;import java.awt.*;public class Test14 extends AppletTextFiled tf;public void init()setLayout( new
23、GridLayout(1,0);tf=new TextField(“Ok“);【15】 add( tf);(分数:2.00)填空项 1:_二级 JAVA 笔试-101 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.以下各项中不属于实现完全定制串行化的类要遵守的原则的是( )。(分数:2.00)A.必须要实现 java.io.Extemalizable 接口B.必须实现 writeExternal()方法以保存对象的数据或状态C.必须实现 DataInput()和 DataOutput()方法 D.必须定义一个具有 public 访问权限的不
24、带参数的构造方法解析:解析 实现完全定制串行化的类要遵守以下原则:必须实现 java.io.Extemalizable 接口;必须实现 writeExtemal()方法以保存对象的数据或状态;必须实现 readExternal()方法;如果对象串行化中使用了外部定义的格式,则 writeExtemal()和 readExtemal()方法都必须完全依照该格式;必须定义一个具有 public 访问权限的不带参数的构造方法。2.如果类实现了 Runnable 接口,类必须包含的方法是( )。(分数:2.00)A.start()、stop()和 run()B.actionPerformed()C.r
25、un() D.start()、stop()解析:解析 本题考查线程机制。任何实现 Runnable 接口的对象都可以作为一个线程的目标对象,类Thread 本身也实现了接口 Runnable,可以通过下面两种方法实现线程体。 定义一个线程类,该类继承 Thread 类并重写其中的 run()方法,初始化这个类的实例时,目标对象target 可为 null,将实例对象用来执行线程体。由于 Java 只支持单重继承,用这种方法定义的类不能再继承其他父类。 提供一个实现 Runnable 接口的类作为线程的目标对象,初始化一个 Thread 类或者 Thread 子类的线程对象时,把目标对象传递给该
26、线程对象,由目标对象提供线程体 run(),用这种方法定义的类可以继承其他父类。3.以下各项中不属于 io 包中接口的是( )。(分数:2.00)A.DataInputB.DataOutputC.DataInputStream D.ObjectInput解析:解析 DataInputStream 类实现了 DataInput 接口,实现对字节输入的基本数据类型的判断,所以不是接口。4.给出下面代码段:public class Testpublic static void main(String args )int m;switch(m)case 0: System.out.println(“c
27、ase 0“);case 1: System.out.println(“case 1“);break;case 2: break;default: System.out.println(“default“);下列 m 的值能引起输出“default”的是( )。(分数:2.00)A.0B.1C.2D.4 解析:解析 本题考查条件语句 switch 的应用。此代码段最后输出 default,则表示 m 的值不能为0、1 和 2 三者其中之一,故 m 的值只能选择 D。5.以下各种调试方法中,靠演绎、归纳以及二分法来实现的是( )。(分数:2.00)A.强行排错法B.回溯法C.原因排除法 D.静态
28、调试解析:解析 本题考查对几种调试方法的掌握,其中强行排错法是最常用也是最低效的,主要思想是通过计算机找错。回溯法是从出现错误征兆处开始,人工沿控制流程往回追踪,直至发现出错的根源。这是在小程序中常用的一种有效的调试方法,程序变大后,可能的回溯路线显著增加,以致人工进行完全回溯到不可能实现。静态调试是一种调试手段,主要是指通过人的思维来分析源程序代码和排错。6.下列说法中错误的是( )。(分数:2.00)A.CDC 是 Configuration 的一部分,主要支持嵌入式设备开发B.CLDC 是 Configuration 的一部分,主要支持嵌入式设备开发 C.CDC 是针对 32bit 的
29、CPU,内存为 2MBD.CDLC 针对 16bit 或 32bit 的 CPU,内存为 128KB 或 256KB解析:解析 CDC 和 CLDC 都是 Configuration 的组成部分,CDC 主要支持嵌入式设备开发,而 CLDC 主要支持移动设备的开发。7.数据管理技术的发展是与计算机技术及其应用的发展联系在一起的,经历了由低级到高级的发展过程。分布式数据库、面向对象数据库等新型数据库是属于( )。(分数:2.00)A.人工管理阶段B.文件系统阶段C.数据库系统阶段 D.高级数据库技术阶段解析:解析 本题考查数据库系统的发展,考生应掌握数据库发展的各个阶段,分布式数据库、面向对象数
30、据库属于数据库系统阶段。8.一棵含 18 个结点的二叉树的高度至少为( )。(分数:2.00)A.3B.4C.5 D.6解析:解析 在二叉树的零层,有 20=1 个结点,即根结点。第 1 层根结点的子结点最多有 2 个,第 2 层的结点总数最多有 4 个,以此类推,二叉树的第 n 层的结点数最多为 2n。一棵含 18 个结点的二叉树的高度至少为 5。9.下面各项声明中合法的是( )。:long1=4990; :int i=4L;:floatf=1.1; :double d=34.4;(分数:2.00)A.、B.、C.、 D.、解析:解析 此题的考点是数字的表示法和基本数据类型间的自动转换。Ja
31、va 语言中,没有小数点的数字被认为是 int 型;带有小数点的数字被认为是 double 型;其他的使用在数字后面加一个字母表示数据类型,加 1 或者 L 是 long 型,加 d 或者 D 是 double 型,加 f 或者 F 是 float 型。可以将低精度的数字赋值给高精度的变量,反之则需要进行强制类型转换。例如将 int、short、byte 类型的数赋值给 long 型时,不需要显式的类型转换;反之,将 long 型数赋值给 byte、short、int 型变量时需要强制转换(int a=(int)123L)。Int I=4L 是将一个 Long 型的数据赋给一个整型的变量,这不
32、符合赋值的要求;Double d=34.4 是正确的赋值,因为 Double d=34.4d。因此应该选 C。10.设有以下语句,对 a 数组元素的引用中(其中 0i10),不正确的是( )。int a10=0,1,2,3,4,5,6,7,8,9,*p=a;(分数:2.00)A.ap-aB.*(public class ClassAint x=20;static int y=6;public static void main(String args)ClassB b=new ClassB();b.go(10);System.out.println(“x=“+b.x);class ClassBi
33、nt x;void go(int y)ClassA a=new ClassA();x=a.y;上述源程序文件的运行结果为( )。(分数:2.00)A.x=10B.x=20C.x=6 D.编译不通过解析:解析 本题考查在 Java 中静态变量(类变量)的用法规则。对于 static 修饰的成员变量和成员方法,可以直接使用类名对它们进行访问。对于类变量,也就是 static 修饰的变量,在生成类的第一个实例对象时,Java 运行时,系统对这个对象的每个类变量分配一块内存,以后再生成该类的实例对象时,所有实例对象将共享同一个类变量,每个实例对象对类变量的改变都会直接影响到其他实例对象,类变量除了可以
34、通过类名直接访问外,还可以通过实例对象来访问。在本例中生成了一个 static int y=6 类变量,在 Class A 中调用的 b.go(10),只不过是 Class B 中的一个局部变量,通过调用 Class B 中的 go方法可以实现生成一个 Class A 对象,并给这个新生成的对象赋予 Class A 中的类变量 y 的值。12.在一个长度为 n 的线性表中插入一个元素,以下说法不正确的是( )。(分数:2.00)A.最好情况下需要移动的数据元素数目为 0B.最坏情况下需要移动的数据元素数目为 nC.在平均情况下需要移动的数据元素数目为 n/2D.最坏情况下需要移动的数据元素数目
35、为 n/2 解析:解析 一般情况下,要在第 i 个元素之前插入一个新元素时,是从最后一个元素开始,直到第 i个元素之间共 n-i+1 个元素依次向后移动一个位置,最好情况指的是在线性表的最后的元素之后插入一个新元素,则不需要移动表中元素。A 是正确的。最坏情况指的是在线性表的第一个元素之前插入一个新元素,则需要移动表中所有的元素, B 是正确的。在平均清况下需要移动的数据元素数目为 n/2,C 是正确的。13.下面程序的输出结果是( )。public class Sunpublic static void main(String args)int a=1,2,3,4);int j=1,s=0;
36、for(int i=3;i=0;i-)s=s+ai*j;j=j*10;System.out.println(s);(分数:2.00)A.1234 B.21C.43D.4321解析:解析 本题考查对 for 循环语句和数组的理解。for 语句中步长为-1 即每循环一次,循环变量 i的值减 1,数组进行反运算,即 ai取值 4、3、2、1。故本题答案是 A。14.下列 API 不属于 java.lang.Math 的是( )。(分数:2.00)A.random()B.abs()C.drawLine() D.sin()解析:解析 选项 A,random()方法是 java. lang.Math 类中
37、提供求随机数的方法;选项 B,abs()方法是 java.lang.Math 类提供求绝对值的方法;选项 D,sin()方法是 java.lang.Math 类提供的求正弦函数的方法;方法 drawLine()是 Graphics 类提供的用来画直线的方法。15.将小写字母 n 赋值给字符变量 oneChar,正确的操作是( )。(分数:2.00)A.oneChar=/nB.oneChar=“n“C.oneChar=110 D.oneChar=N解析:解析 字母在 Java 语言中是以 ASCII 码存放的,即以整数形式存放的。n 对应的 ASCII 值是110,由于我们对 n 所对应的 AS
38、CII 码值不清楚,所以解答本题只能采用逐项排除法。选项 A 中,“/n“是换行符;选项 B 中存放的是字符串 n;选项 D 中存放的是字母 N。故本题答案是 C。16.以下各项中属于面向对象程序设计语言不同于其他语言的主要特点的是( )。(分数:2.00)A.继承性 B.消息传递C.多态性D.静态联编解析:解析 继承是一个类(子类)直接使用另一个类(父类)的所有属性和方法(权限为私有的属性和方法除外)。它可以减少相似的类的重复说明,从而体现出一般性与特殊性的原则,这使得面向对象程序设计语言有了良好的重用性,也是其不同于其他语言的最主要特点。17.有关绘图,下面的说法正确的是( )。:draw
39、Art(int x,int y,int width,int height,ing stanAngle,int arcAngle)是用来指定在矩形的边界内从起始角度到结束角度之间画弧。:drawLine(int x1,int y1,int x2,int y2)用来绘制从点(x1,y1)到(x2,y2)的线段。当计算出线段上点的坐标不是整数时,向该点的右下方取整。:drawRet(int x,int y,int width,int height)绘制指定矩形的轮廓。:drawPloygon(Polygon p)绘制由特定的点指定的多边形。(分数:2.00)A.、B.、C.、D.、 解析:解析 Gr
40、aphics 类有一些常用的绘图方法,用来绘制弧、直线、矩形横几何图形。 drawLine(int x1,int y1,int x2,int y2)用来绘制从点(x1,y1)到(x2,y2)的线段。当计算出线段上的点的坐标不是整数时,向该点的左下方取整。18.在结构化方法中,软件功能分解属于下列软件开发中的( )阶段。(分数:2.00)A.详细设计B.需求分析C.总体设计 D.编程调试解析:解析 软件系统结构的总体设计包括:基于功能层次结构建立系统、按功能划分模块的层次结构、确定每个模块的功能、建立与已确定的软件需求的对应关系、确定模块间的调用关系和模块间的接口、评估模块划分的质量等方面。详细
41、设计的任务是在使用程序设计语言编制程序以前,对所采用算法的逻辑关系进行分析,设计出全部必要的过程细节,并给予清晰的表达,需求分析是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。需求分析的任务是发现需求、求精、建模和定义需求,通常包括功能需求、性能需求、环境需求、可靠性需求、安全保密要求、用户界面需求、资源使用需求、成本消耗需求、开发进度需求等。编程调试的任务是诊断和改正程序中潜在的错误。综上所述,软件功能分解只能发生在总体设计阶段。19.下列哪个类声明是正确的? ( )(分数:2.00)A.abstract class G2 extends superClass1,superC
42、lass2.B.abstract public class classmates.C.public final class NewClass extends superClass implemnets Interface1. D.public abstract class String.解析:解析 本题考查对类声明的掌握程度。选项 A 错误,Java 不支持多重继承,故 extends 关键字后只能接一个父类;选项 B 错误,在类声明中 public 关键字必须位于 abstract 关键字前;选项 C 正确,声明了一个公有的不能继承的类,这个类的父类是 superClass,并使用了 Int
43、erfacel 提供的接口,类不能声明为 protected 和 pfivate 属性且不以“;”结尾:选项 D 错误,String 是 Java 中字符串的关键字,不能用于类名。20.下面的代码实现一个简单的 Applet:import java.applet.Applet;import java.awt.*;public class Sample extends Appletprivate String text=“Hello World“;public void init()add(new Label(text);public Sample (String string)text=str
44、ing;通过下面的 HTML 文件访问:htmltitleSample Applet/titlebodyapplet code=“Sample.class“ width=200 height=200/applet/body/html当编译和运行该小程序时会出现什么结果,请选择正确的答案。( )(分数:2.00)_解析:解析 该题考查对 Applet 具体编程的理解。实际上就是考查 Applet 编程与 Application 编程的区别。在应用程序编程中,通常由主类的构造函数和 main()方法,在主类的构造函数里面进行一些一次性的初始化工作。而在小程序的编程中,也有主类,既然有类也就有相应的
45、构造函数。但是要知道,Applet 是在浏览器或者是通过专门的工具运行的,在创建 Applet 时,不能通过任何手段给 Applet 传递参数,所以构造函数应该是不能有参数的。但是,这种错误在编译时并不报错,因为它并没有任何的语法错误,只是会在运行时出错,系统会告诉你无法实例化小程序。注意,本题如果将构造函数改成下面的形式,则编译与运行时都不会出错。public Sample (String string)text = “aaaaa“;21.下列用于 Java 解析类文件的命令是( )。(分数:2.00)A.javaB.javacC.javap D.jar解析:解析 Java 基本命令包括:j
46、avac、java、 javadoc、appletviewer、jaf、jdb、javail、javap、 extcheck。其中,命令 javap 是 Java 类文件解析器,用于解析类文件。如果没有使用选项,javap 将输出类的 public 域及方法。22.下列程序的输出结果是( )。public class c3public static void main(String args)char c1=B,c2=C;if(c1+1c2)+C1;System.out.println(c1);(分数:2.00)A.BB.bC.C D.c解析:解析 在程序中,c1 和 c2 均为 char 类
47、型的变量,判断条件 c1+1c2,执行过程中在 Unicode 字符集中找到字符B的下一个字符,即C,再将字符C和字符C的索引值进行比较,在 Unicode 字符集中,C的索引值小于c的索引值,因此条件表达式为 true,执行语句“+cl;”,因此 c1 的值变为C。23.一个 int 类型的常量和一个 byte 类型的常量做加法,则其结果的类型为( )。(分数:2.00)A.int B.byteC.charD.long解析:解析 int 类型常量和 byte 类型的常量做加法时,byte 类型常量自动转换为 int 类型,因此最后的结果应该是 int 类型的值。24.设有 n 元关系 R 及 m 元关系 S,则关系 R 与 S 经笛卡儿积后所得新关系是一个( )元关系。(分数:2.00)A.mB.nC.m+n D.m*n解析:解析 本题考核对笛卡儿积运算的掌握。笛卡儿积是两个关系的合并操作,因此 n 元关系 R 与 m元关系 S 经笛卡儿积后所得新关系是 m+n 元关系。25.在数据结构中,从逻辑上可以把数据结构分成( )。(分数:2.00)A.动态结构和静态结构B.线性结构和