admin 管理员组文章数量: 887031
2023年12月21日发(作者:三层架构和mvc的关系)
计算机二级JAVA-15
(总分74, 做题时间90分钟)
一、选择题
1.
下列叙述中正确的是______。
A.程序设计时不需要讲究风格
•
B.程序中的注释是可有可无的
•
C.程序只要求机器读懂就可以了,不需要去关心维护的问题
•
D.以上说法都不对
•
A B C D
该问题分值: 2
答案:D
程序设计的风格总体而言应该简单和清晰,程序必须是可以理解的。程序的正确注释有助于读者理解程序,不是可有可无的。对程序的要求不仅是可以在机器上执行,给出正确的结果,而且要便于程序的调试和维护,这就要求编写的程序不仅自己看得懂,而且也要让别人能看懂。
2.
已知:int[]a=new int[100];在下列给出的数组元素中,非法的是
A. a[0]
•
B. a[1]
•
C. a[99]
•
D. a[100]
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:D
[解析] 本题考查Java中数组的概念。对于数组的掌握,不能仅仅停留在概念上,更多的是能将所学的知识灵活运用。int[]a=new int[100]定义了一个数组a,含有100个整型元素。在Java中,数组元素的下标是从0开始的,因此上面定义的数组实际上下标是从0~99,所以选项D错误。
3.
将较长的数据类型转换为较短的整数类型,要进行 。
A.类型的自动转换
•
B.类型的强制转换
•
C.无需转换
•
D.无法实现
•
SSS_SIMPLE_SIN
SSS_SIMPLE_SIN
A B C D
该问题分值: 1
答案:B
4.
在编译Java程序时,用于指定生成.class文件位置的选项是 。
A.-g
•
B.-d
•
C.-verbose
•
D.-nowarn
•
A B C D
该问题分值: 2
答案:B
5.
软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件),下面属于系统软件的是______。
A.编辑软件
•
B.操作系统
•
C.教务管理系统
•
D.浏览器
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 1
答案:B
[解析] 编辑软件和浏览器属于工具软件,教务系统是应用软件。
6.
软件生命周期是指 。
A.软件产品从提出、实现、使用维护到停止使用退役的过程
•
B.软件从需求分析、设计、实现到测试完成的过程
•
C.软件的开发过程
•
D.软件的运行维护过程
•
SSS_SIMPLE_SIN
A B C
该问题分值: 2
答案:A
SSS_SIMPLE_SIND
[解析] 软件生命周期(SDLC,Systems Development Life Cycle,SDLC)是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段。
7.
有如下程序:
public class MethLoad
{
public static void main(String args[])
{
MethLoad classObj = new MethLoad();
st(4);
st(4.0);
}
void methtest(double D)
{
double sum = 2*d;
n("The result is:"+sum);
}
void methtest(int n)
{
int sum = 4*n;
n("The result is:"+sum);
}
}
程序的运行结果为 。
A. The result is:16 The result is:8.0
•
B. The result is:8.0 The resuR is:16
•
C. The result is:8 The result is:16.0
•
D. The resuR is:16.0 The result is:8
•
A B C D
该问题分值: 1
答案:A
[解析] 本题考查对方法重载的掌握程度。在上面的程序中,类MethLoad中定义了两个具有相同名称methtest的方法,但这两个方法的参数不相同,编译器会根据参数的个数和参数类型宋决定应该调用哪个方法。在类MethLoad中先声明了一个classObj对象,接着调用classObj的methest方法,只不过是两次调用中参数的类型不同,第1次调用的参数是血类型的4,第2次调用的参数是 double类型的4.0,因此要调用相对应的方法。int类型的方法返回参数值的4倍,而 double类型的方法返回参数值的2倍。
8.
将一个容器panell放到容器framel中的方法是______。
SSS_SIMPLE_SIN
A. ( panell);
•
B. (panell);
•
C. nel(panell);
•
D. jPanel(panell);
•
A B C D
该问题分值: 2
答案:B
[解析] 将一个容器panell放到容器framel中的方法和容器上添加部件是一样的,使用add()方法即可。
9.
数据库设计的概念设计阶段,表示概念结构的常用方法和描述工具是 。
A.层次分析法和层次结构图
•
B.数据流程分析法和数据流程图
•
C.结构分析和模块结构图
•
D.实体联系法和实体联系图
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:D
10.
Java中用于提供Java语言、Java虚拟机的核心类和接口的包的是______。
A. 包
•
B. 包
•
C. 包
•
D. 包
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:C
[解析] 包:封装编程要用的所有基本类,如Object、Class、System、Integer、Thread等。对于任何一个Java程序来说,这些类几乎是必不可少的。还包含了许多由Java虚拟机发出的异常和一些用于访问系统资源的类,如ClassLoader等。
11.
下面是关于类及其修饰符的一些描述,不正确的是 。
**类只能用来派生子类,不能用来创建abstract类的对象
•
**不能与final同时修饰一个类
•
SSS_SIMPLE_SIN
•
**类不但可以用来派生子类,也可以用来创建final类的对象
**方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法
A B C D
该问题分值: 2
答案:C
12.
下列方法与Applet显示无关的是 。
A.paint() B.update()
C.draw()D.repaint()
A B C D
该问题分值: 2
答案:C
[解析] 本题考查Applet的基本概念。Applet显示相关的方法主要有3个。paint()方法,具体执行Applet的绘制,定义为:public void
paint(Graphics g);update()方法,定义为:public void update(Graphics
g),主要用于更新Applet。的显示;repaint()方法,定义为:public void
repaint(),主要用于Applet的重新显示,它调用update()方法实现对Applet的更新。而draw()方法与显示无关。故选C。
13.
下列关于Applet的叙述中,正确的是
A. Applet是Java类,所以可以由JDK中的解释器java直接解释运行
•
B. Applet的主类不一定要定义为java.applet.Applet类或JApplet类的子类
•
C. Applet与Application的主要区别在执行方式上
•
D. Applet不能在浏览器中运行
•
SSS_SIMPLE_SINSSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:C
[解析] 本题考查Java中Applet与Application的区别。这个知识点是考试重点,历次考试都有涉及,务必掌握。
Applet是Java类,但Applet不能由JDK中的解释器java直接运行,要在浏览器或appletviewer中运行,运行过程比Application更复杂,选项A和选项D说法错误。Applet的主类一定要定义为 java.applet.Applet类或JApplet类的子类,选项B说法错误。Applet与Application的主要区别在执行方式上,Application以main()方法为入口点运行,两者都是通过"javac"命令编译,所以只有选项C说法正确。
SSS_SIMPLE_SIN
14.
运行下面的程序时,会产生 。
public class Test{
public static void main(String args[ ] ) {
int x =0;
int y = 2/x;
int z[ ] = {1,2,4,6};
int p=z[4];
}
}
A. ArrayIndexOutOfBoundsExcePtion异常
•
B. NumberFormatException异常
•
C. ArithmeticException异常
•
D. ArithmeticException异常和ArrayIndexOutOfBoundsExcePtion异常
•
A B C D
该问题分值: 2
答案:C
[解析] 只能出现ArithmeticException异常,由于在程序第4行出现了这个异常后,程序就跳出,不能继续执行下去,因此不会出现ArrayIndexOutOfBoundsException异常。
15.
利用E-R模型进行数据库的概念设计,可以分成3步:首先设计局部E-R模型,然后把各个局部E-R模型综合成一个全局的模型,最后对全局E-R模型进行 。
A. 简化
•
B. 结构化
•
C. 最小化
•
D. 优化
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:D
[解析] 本题考核实体联系模型。在概念设计中按照模块的划分画出每个模块的E-R图,然后把这些图合成一张E-R图作为全局模型,最后应该对全局E-R图进行优化,看看是否有重复和不合理的地方。不能只是进行简单的合并。
16.
下面的 关键字通常用米对对象加锁,从而使得对对象的访问是排他的。
SSS_SIMPLE_SIN
**
•
**
•
**
•
**
A B C D
该问题分值: 2
答案:C
17.
语句public String getEncoding()的功能是 。
A. 给当前输入流重做标记
•
B. 获得当前字符流所用的编码方式
•
C. 基于字节流in生成一个输入字符流对象
•
D. 给当前字符输入流设置编码方式
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:B
[解析] getEncoding是InputStreamReader类的方法,其功能是获得当前字符流所用的编码方式。
18.
若变量a、i已正确定义,且i已正确赋值,合法的语句是 。
•
SSS_SIMPLE_SIN**==1
B.++i:
•
**=a++=5;
**=int(i);
A B C D
该问题分值: 2
答案:B
19.
下列包中,包含JoptionPane类的是 。
**
•
**
•
**
•
SSS_SIMPLE_SIN
**
A B C D
该问题分值: 2
答案:A
[解析] Swing中提供了JOptionPane类来实现类似Windows平台下的MessageBox的功能,利用JOptionPane类中的各个staUc方法来生成各种标准的对话框,实现显示出信息、提出问题、警告、用户输入参数等功能。且这些对话框都是模式对话框。
20.
有以下程序:
main()
{ char a[]="abcdefg",b[10]="abcdefg";
printf("%d %dn",sizeof(a),sizeof(b));
}
执行后输出的结果是 。
** 10
•
**
•
** 10
•
SSS_SIMPLE_SIN** 10
A B C D
该问题分值: 2
答案:C
21.
下列关于Applet中的归档文件叙述不正确的是
A. 使用归档文件的好处是减少HTTP的连接次数,从而大大减少了Applet整体的下载时间
•
B. 所有的浏览器都识别相同的归档文件格式和指定归档文件的HTML代码
•
C. 归档文件是一种压缩文件,使用它也减少了文件的传输时间
•
D. 使用JDK的jar工具创建JAR文件
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 1
答案:B
解析:不是所有的浏览器都识别相同的归档文件格式和指定归档文件的HTML代码。
22.
SSS_SIMPLE_SIN
设有关键码序列(16,9,4,25,15,2,13,18,17,5,8,24),要按关键码值递增的次序排序,采用初始增量为4的希尔排序法,一趟扫描后的结果为 。
A.(15,2,4,18,16,5,8,24,17,9,13,25)
•
B.(2,9,4,25,15,16,13,18,17,5,8,14)
•
C.(9,4,16,15,2,13,18,17,5,8,24,15)
•
D.(9,16,4,25,2,15,13,18,5,17,8,24)
•
A B C
该问题分值: 2
答案:A
23.
•
SSS_SIMPLE_SIND
**中提供了包,该包支持的特点有 。
A. 文件锁定
B. 字符及编码、非阻塞I/O
•
C. 内存映射技术
•
D. 以上特点都正确
•
A B C D
该问题分值: 2
答案:D
[解析] J2SE1.4提供了一些新的I/0功能,被封装在包中。其特点是:使用内存映射技术、文件锁定、字符及编码、非阻塞I/0等。
24.
如果进栈序列为e1、e2、e3、e4、e5,则可能的出栈序列是 。
**、e1、e4、e2、e5
•
**、e2、e4、e3、e1
•
**、e4、e1、e2、e5
•
SSS_SIMPLE_SIND.任意顺序
A B C D
该问题分值: 2
答案:B
[解析] 根据栈先进后出的特点可知e1肯定是最后出栈的,因此正确答案为选项B。
25.
SSS_SIMPLE_SIN
把算法工作量大小和实现算法所需存储单元多少分别称为算法的______和空间复杂度
A.可实现性
•
B.时间复杂度
•
C.困难度
•
D.计算有效性
•
A B C
该问题分值: 2
答案:B
26.
J2EE和( )语言绑定。
**
•
**++
•
**
•
SSS_SIMPLE_SIND
D.汇编语言
A B C D
该问题分值: 2
答案:C
[解析] J2EE的基础是J2SE,以Java为平台;而C语言用于ODBCAPI。由于两者不兼容,SUN公司才提出了JDBC作为Java几个平台与数据库的标准连接。
27.
已知一棵二叉树的后序遍历序列是dabec,中序遍历序列是debac,则它的前序遍历序列是 。
A. acbed
•
B. decab
•
C. deabc
•
D. cedba
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:D
[解析] 依据后序遍历序列可确定根结点为c,由中序遍历序列可知其左子树由deba构成,右子树为空;又由左子树的后序遍历序列可知其根结点为e,由中序遍历序列可知其左子树为d,右子树由ba构成,如图所示。由此可知该二叉树的前序遍历序列为选项D。
SSS_SIMPLE_SIN
28.
下列语句中正确的是 。
A. char c='ccc';
•
B. float f=0.73;
•
C. long l=xffff;
•
D. double d=0.6E-2;
•
A B C D
该问题分值: 2
答案:D
[解析] char类型数据为单引号括起的一个字符,所以A错误。小数0.73在Java中默认为 double类型,它的精度比float类型高,只有通过强制类型转换才能赋给float类型变量,所以B错误。整型常数的十六进制表示是以0x或0X开头,而不是以x开头,所以C错误。0.6E-2是 0.6×10-2的科学计数法表示,正确。
29.
有以下程序:
void main()
{ char str[][10]={"China","Beijing"},*p=str[0];
printf("%sn",p+10);
}
程序运行后输出的结果是 。
**
•
**
•
**
•
SSS_SIMPLE_SIN**
A B C D
该问题分值: 2
答案:B
30.
设int i=2,j=1,k=3,则表达式i&&(i+j)&k|i+j的值是 。
**
•
**
•
**
•
SSS_SIMPLE_SIN**
SSS_SIMPLE_SINA B
C D
该问题分值: 2
答案:C
31.
阅读下列代码段。
class Test implements Runnable{
public int run(){
int i=0;
while(true){
i++;
n('i='+i);
}
}
上述代码的编译结果是 。
A.程序通过编译并且run()方法可以正常输出递增的i值
•
B.程序通过编译,调用run()方法将不显示任何输出
•
C.程序不能通过编译,因为while的循环控制条件不能为“true”
•
D.程序不能通过编译,因为run()方法的返回值类型不是void
•
A B C D
该问题分值: 2
答案:D
[解析] while的循环控制条件可以为true,run方法没有返回值,所以不能是int型,故此程序不能通过编译。
32.
若程序中有宏定义行:#define N 100,则以下叙述中正确的是 。
A.宏定义行中定义了标识符N的值为整数100
•
B.在编译程序对C源程序进行预处理时用100替换标识符N
•
C.对C源程序进行编译时用100替换标识符N
•
D.在运行时用100替换标识符N
•
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:B
33.
下面几种调试方法中不适合调试大规模程序的是 。
A. 强行排错法
•
B. 回溯法
•
C. 原因排除法
•
D. 静态调试
•
SSS_SIMPLE_SIN
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:B
[解析] 本题考查对几种调试方法的掌握。其中,强行排错法是最常用也是最低效的,主要思想是通过计算机找错,适合调试大规模程序。回溯法是从出现错误征兆处开始,人工沿控制流程往回追踪,直至发现出错的根源。这是在小程序中常用的一种有效的调试方法。程序变大后,可能的回溯路线显著增加,以致人工进行完全回溯变得不可能。原因排除法是靠演绎、归纳以及二分法来实现的,适合调试大规模程序。静态调试也是‘种调试手段,主要是指通过人的思维来分析源程序代码和排错。
34.
下列属于合法的Java标识符的是 。
A._cat
•
**
•
C.+static
•
D.-3.14159
SSS_SIMPLE_SIN
A B C D
该问题分值: 2
答案:A
[解析] 本题考查Java标识符的命名规则,是考试的重点内容。Java中标识符的命名规则是标识符以字母、下画线或美元符作为首字符的字符串序列;标识符是区分大小写的;标识符的字符数没有限制。由此可见,Java中标识符不能以数字开头,所以选项B错误,不能以“+”开头,选项C错误,不能以“-”开头,选项D错误,只有选项A是正确答案。
35.
阅读下列代码段,选出该代码段的正确文件名 。
class A
{
void method1()
{
n("method1 in class A");
}
}
public class B
{
void method2()
{
n("method2 in class B");
•
}
public static void main(String args[])
{
n("main in class B");
}
}
A) B)
**
C.
•
**
D.
A B C D
该问题分值: 1
答案:D
[解析] Java源程序文件是以Java为后缀的,Java字节码文件以.class为后缀,而且 Java源文件中只能有一个public类,该类的名字为源文件名,程序段中类B是以public修饰的,因此源程序文件名为Biava。
二、填空题
36.
下列软件系统结构图的宽度为 。
SSS_FILLSSS_SIMPLE_SIN
该问题分值: 1
答案:3
[解析] 题目中的图形是倒置的树状结构,这是用层次图表示的软件结构。结构图中同一层次模块的最大模块个数称为结构的宽度,它表示控制的总分布。根据上述结构图宽度的定义,从图中可以看出,第二层的模块个数最多,即为3。因此,这个系统结构图的宽度就为3。
37.
所有由Container派生的类称为 。
SSS_FILL 该问题分值: 1
答案:容器
[解析] 本题考查容器的概念。容器指所有由Container派生的类,可以包含由
Component派生的任何类的对象,如Window类和Panel类都由容器类Container直接派生而宋;Frame继承自Window类;Panel类派生了Applet类。其他容器还有面板Panel、滚动条ScrollPane和选项面板OptionPane。
38.
下面程序的运行结果是:______。
fun(int t[],int n)
{ int i,m,
if(n==1) return t[0];
else
if(n%3==0){ m=fun(t,n-1); return m;}
}
main()
{ int a[]={11,4,6,3,8,2,3,5,9,2};
printf("%dn",fun(a,10));
}
SSS_FILL
该问题分值: 1
答案:3
39.
一个队列的初始状态为空。现将元素A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队则元素退队的顺序为______。
SSS_FILL
该问题分值: 2
答案:A,B,C,D,E,F,5,4,3,2,1。
[解析] 队列是先进先出的。
40.
若按功能划分,软件测试的方法通常分为白盒测试方法和 测试方法。
SSS_FILL
该问题分值: 2
答案:黑盒或黑箱
[解析] 软件测试的方法分为白箱测试方法和黑箱测试方法。白箱测试是根据对程序内部逻辑结构的分析来选取测试用例,白箱测试用例的设计准则有:语句
覆盖、分支覆盖、条件覆盖和组合条件覆盖;黑箱测试方法完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例。常用的黑箱测试有等价分类法、边值分析法、因果图法和错误推测法。
41.
对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为______。
SSS_FILL
该问题分值: 2
答案:45
[解析] 在冒泡排序中,最坏情况下,需要比较的次数为n(n-1)/2,也就是:10×(10-1)/2=45
1
版权声明:本文标题:计算机二级JAVA-15_真题(含答案与解析)-交互 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1703169325h440776.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论