(备考2023年)四川省绵阳市全国计算机等级考试Java语言程序设计测试卷(含答案)_第1页
(备考2023年)四川省绵阳市全国计算机等级考试Java语言程序设计测试卷(含答案)_第2页
(备考2023年)四川省绵阳市全国计算机等级考试Java语言程序设计测试卷(含答案)_第3页
(备考2023年)四川省绵阳市全国计算机等级考试Java语言程序设计测试卷(含答案)_第4页
(备考2023年)四川省绵阳市全国计算机等级考试Java语言程序设计测试卷(含答案)_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(备考2023年)四川省绵阳市全国计算机

等级考试Java语言程序设计测试卷(含答

案)

学校:班级:姓名:考号:

一、单选题(10题)

1.下列语句片段:inia=-67,b=l16,c=78;intd="a|b&c;

System.out.println(d)的结果为()

A.70B.67C.78D.56

2.Java虚拟机(JVM)运行Java代码时,不会进行的操作是()。

A.加载代码B.校验代码C.编译代码D.执行代码

3.下列不是InputStream子类的是

A.文件输入流FilcInputStrcam

B.对象输入流ObjectlnputStream

C.字符输入流CharlnputStream

D.压缩文件输入流ZipInputStream

4.构造方法名必须与()相同,它没有返回值,用户不能直接调用它,只

能通过new调用。

A.类名B.对象名C.包名D.变量名

5.main方法是Javaapplication程序执行的入口点,关于main方法的方

法头,以下哪项是合法的?()

A.publicstaticvoidmain()

B.publicstaticvoidmain(Stringargs[])

C.publicstaticintmain(String[]arg)

D.publicvoidmain(Stringarg[])

6.和resume。方法相互搭配,使线程停止执行,然后调用resume。方法

恢复线程的是()。

A.interrupt()B.stopOC.suspend()D.yield()

7.以下构件中处于Java虚拟机下方的是()。

A.JavaOSB.Java基本APIC.Java基本类D.Java应用程序和Applet

8.下列方法中,不属于类String的方法是()。

A.toLowerCase()B.vaIucOf()C.charAt()D.叩pend。

9.下面语句会产生编译错误的是

A.floatF=1024.0F;

B.doubleD=1024.0;

C.byteB=1024;

D.charC=1024;

10.下列关于Java多线程并发控制机制的叙述中,错误的是()。

A.Java中对共享数据操作的并发控制是采用加锁技术

B.线程之间的交互,提倡采用suspend/resume方法

C.共享数据的访问权限都必须定义为private

D.Java中没有提供检测与避免死锁的专门机制,但程序员可以采用某些

策略防止死锁的发生

二、2.填空题(10题)

1LAWT事件分为两大类:低级事件和高级事件。其中【】一是指基于

语义的事件,它可以不和特定的动作相关联,而依赖于触发此事件的类。

12.在数据库技术中,实体集之间的联系可以是一对一或一对多或多对

多的,那么“学生”和“可选课程”的联系为0

13.下面是用户程序对Applet类中方法paint。的重新定义。根据程序功

能,在指定的空白处填上适当的语句或语法成分。

publicvoidpaint(Graphicsg)

{g.(“你好!”,220);)

14.在下面JavaApplet程序的下画线处填入代码,使程序完整并能够正

确运行。

importjava.applet.*;

importjava.awt.*;

publicclassHelioWorld{

publicvoidpaint(Graphicsg){

g.drawStringC^elloWorld!25,25);

intm=6;

do{m--;}while(m>0);

System.out.println("m="+m);

)

}

19.Java中的方法的参数传递是____调用。

20.冒泡排序算法在最好的情况下的元素交换次数为【】。

三、1.选择题(10题)

21.以下内容不屈于算法程序所占的存储空间的是()。

A.算法程序所占的空间

B.输入的初始数据所占妁存储空间

C.算法程序执行过程中所需要的额外空间

D.算法执行过程中所需要的存储空间

22.下列运算符中不能进行位运算的是

A.>>B.>>>C.<<D.<<<

23.下列不屈于J2SDK命令的是0。

A.RMI命令B.网络传输命令C.J2SDK基本命令D.安全控制命令

24.main方法是JavaApplication程序执行的入口点,关于main方法头

以下()是合法的。

A.publicstaticvoidmain()

B.publicstaticvoidmain(String[]args)

C.publicstaticintmain(String[]arg)

D.publicvoidmain(Stringarg|])

25.在结构化设计方法中,生成的结构图(SC)中,带有箭头的连线表示

A.A.模块之间的调用关系B.程序的组成成分C.控制程序的执行顺序

D.数据的流向

26.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数

据库系统具有()

A.数据无冗余B数据可共享C.专门的数据管理软件D.特定的数据模

27.在七类内聚中具有最强内聚的一类是()。

A.功能内聚B.通讯内聚C.偶然内聚D.顺序内聚

28.能够支持javadoc命令的注释语句是()。

A./**...//B./*...*/C.//D./**...*/

29.定义一个表示10个值为null的字符串数组,下面选项正确的是

A.String[]a;

B.Stringa[];

C.chara[10][];

D.Stringa|J=newString[10];

30.下列安全控制中,()是管理密钥库和证书的命令。

A.keytoolB.kintC.ktabD.klist

四、综合应用题(2题)

31.本题的功能是用键盘上的方向键来控制直线的绘制方向。如果一直按

向上的方向键,则在窗口中从焦点开始向上缓慢绘制直线,按其他方向

键也会向对应的方向缓慢地绘制直线,如果按下<Shift>键的话,绘制直

线的速度会加快。

importjava.awt.*;

importjava.awt.gcom.*;

importjava.util.*;

importjava.awt.event.*;

importjavax.swing.*;

publicclassjava3{

publicstaticvoidmain(String[]args)

(

SketchFrame.frame二newSketchFrame;

frame.setDefauhCloseOperation(JFrame.EXIT_

ON.CLOSE);

frame.show;

}

)

classSketchFrame.extendsJFrame

{

publicSketchFrame

(

setTitle("java3H);

setSize(DEFAULTWIDTH,DEFAULT

HEIGHT);

SketehPanelpanel=newSketchPanel;

ContainercontentPane=getContentPane;

contentPanc.add(pancl);

)

publicstaticfinalintDEFAULT_WIDTH=300;

publicstaticfinalintDEFAULT_HEIGHT

=200;

)

classSketehPanelextendsJPanel

(

publicvoidSketehPanel

(

last=newPoint2D.Double(100,100);

lines=newArrayList;

KeyHandlerlistener=newKeyHandler;

addkeyListener(this);

setFocusable(true);

)

publicvoidadd(intdx,intdy)

Point2Dend=newPoint2D.Double(last.getX

+dx,

last.getY+dy):

Line2Dline=newLine2D.Double(last,end);

lines.add(line):

repaint;

last=end:

}

publicvoidpaintComponcnt(Graphicsg)

{

super.paintComponcnt(g);

Graphics2Dg2=(Graphics2D)g;

for(inti=0;i<lines.size;i++)

92.draw((Linc2D)lincs.get(i));

)

privatePoint2Dlast:

privateArrayListlines;

privatestaticfinalintSMALLJNCREMENT

=1:

privatestaticfinalintLARGE_INCREMENT

=5;

privateclassKcyHandlerimplementsKeyListcncr

(

publicvoidkeyPressed(KeyEventevent)

(

KEYkeyCode=evenl.gelKeyCode;

intd;

if(event.isShiftDown)

d=LARGE_INCREMENT;

else

d=SMALL_INCREMENT;

if(keyCode==KeyEvent.VK_LEFT)add(-

d,0);

elseif(keyCode==KeyEvent.VK_RIGHT)

add(d,0);

elseif(keyCode==KeyEvent.VK_UP)add(0,

-d):

elseif(keyCode==KeyEvent.VK_D0WN)

add(0,d);

)

publicvoidkeyReleased(KeyEventevent){)

publicvoidkeyTyped(KeyEventevent)

(

charkcyChar=evcnt.gctKeyChar;

intd;

if(Character.isUpperCase(keyChar))

(

d=LARGE_INCREMENT;

keyChar=Character.toLowerCase(keyChar);

else

d=SMALL_INCREMENT;

32.本题的功能是展示4种不同的对话框。窗口中有4个按钮:“消

息”、“输入”、“确定”和“选择”,单击任意一个按钮,就能弹出一个对

应的对话框。其中,消息对话框只有一个提示信息和一个“确定”按

钮,输入对话框有一个供输入的文本框及“确定”和“撤销”两个按钮;确

定对话框中有一个提示信息和三个按钮“是"、“否”和“撤销”;而选择对

话框中有一个提示信息和两个按钮“确定”和“取消”。

importjavax.swing.*:

importjava.awt.event.*;

importjava.awt.*;

Publicclassjava3extendsJFrame.implementsButtonSelecte

ActionListener{

JButtonbtnMessage=newJButton("消息J);

JButtonbtnlnput=newJButton("输入)

JButtonbtnConfirm=ncwJButton("确认”);

JButtonbtnOption-newJButton("选择");

publicjava3(){

supcr("java3");

btnMessage.addActionListener(this);

btnlnput.addActionListener(this);

btnConfirm.addActionListencr(this);

btnOption.addActionListener(this);

getContentPane().setLayout(newFIowLavout());

getContentPanc().add(btnMessage);

getContentPane(),add(btnlnput);

gelContentPane().add(btnConfirm);

getContentPanc().add(btnOption);

addWindowListener(newWindowAdapter(){

publicvoidwindowClosing(WindowEvente){

System.exit(O);

));

)

publicstaticvoidmain(Stringargs[]){

java3fr=newjava3();

fr.pack();

fr.setVisible(true);

)

Publicvoidactionperfo门ned(ActionEvente){

Objeci[]opt={“确认”,“取消)

JButtoninstance:(JButton)c.gctObicct();

if(instancc==btnMcssage)

JOptionPanc.showMessagcDialog(this,”消息对话框”);

elseif(instancc==btnlnput)

JOptionPanc.showInputDialog(this,”输入对话框”);

elseif(instancc==btnConfirm)

JOptionPanc.showConfirmDiaIog(this,”确认对话框");

else

JOptionPane.showOptionDialog(this,”选择对话框“,“选择”,

JOptionPane.YES_OPTION,JOptionPane.QUESTION_MESSAGE,

null,opt,opt[l]);

)

)

五、单选题(0题)

33.下列选项默认的布局管理器不是BorderLayout的是()。

A.WindowR.PanelC.FrameDDialog

六、单选题(0题)

34.下列Java组件中,不属于容器的是()。

A.PanelB.WindowC.FrameD.Label

参考合案

l.B

2.A

Java虚拟机加载代码是在运行前的操作。运行代码时会校验、编译和

执行代码。

3.C解析:本题考查考生对Java中InputStream非字符输入流的掌握。

所有的字节输入流都是从InputStream继承,包括:ByteArrayInputStream,

以字节数组作为输入流:FilcInputStrcam,可对一个磁盘文件设计的数

据进行处理;Pipedl叩utStream,实现线程之间通信的一个类;

FilterlnputStream,过滤器输入流;SequencelnputStream,将多个输入流

首尾相接;ObjectInputStream,实现Objectinput接口。选项D中压缩文

件输入流ZipInputStream是InflaterlnputStream的子类,而

InflaterlnputStream是FilterlnputStream的子类,只有选项C中字符输出

流CharlnputStream类是字符流。本题涉及内容较多,要求对整个输入输

出流有所了解。

4.A解析:构造方法是类中的一种特殊方法,是为对象初始化操作编写

的方法,用它来定义对象的初始状态。构造方法名必须与类名相同,它

没有返回值,用户不能直接调用它,只能通过new自动调用。

5.B

6.C解析:在一个线程中调用suspend。,将使线程暂停执行,要想恢复

线程,必须由其他线程调用resume。恢复该线程的执行。不提倡这两种

方法,容易产生死锁。

7.A解析:本题考查对Java虚拟机的理解。选项A正确,Java虚拟机处

于核心位置,它的下方是移植接口,移植接口中依赖平台和不依赖平台

的两部分组成,依赖三台的部分称为适配器,不依赖平台的部分为

JavaOS:选项B、C、D错误。在Java虚拟机上方,是Java的类和Java

API。在JavaAPI上,可以编写Java应用程序和JavaApvleto

8.D

解析:String的方法中,toLowerCase。方法是转换成小写,valueof()方

法是获得相应数值,charAt()方法是提取字符中中指定位置的字符。

append。是StringBuffcr的方法。

9.C解析:本题考查考生对Java中数据类型的理解。为了防止计算机高

低位字节存储顺序不同,通常byte类型用来表示数据避免出错,因为它

只有8位bit,范围是:-128~+127,选项C超出了此范围,所以是错误

的。float类型数的表示范围是:-3.40282347E38~3.40282347E38;

double类型数的表示范围是:-1.79769313486231570E308~

1.79769313486231570E308;char类型在内存中占16位bit,表示范围是

0〜65535。

10.B

本题考查多线程的并发控制机制。Java中对共享数据操作的并发控制

采用传统的加锁技术,也就是给对象加锁,选项A说法正确。线程之

间的交互,提倡采用wait()和notify。方法,这两个方法是

java.lang.object类的方法,是实现线程通信的两个方法,不提倡使用

suspend。和resume。方法,它们容易造成死锁,所以选项B说法错

误。共享数据的访问权限都必须定义为private,不能为public或其

他,选项C说法正确。Java中没有提供检测与避免死锁的专门机制,

因此完全由程序进行控制,但程序员可以采用某些策略防止死锁的发

生,选项D说法正确。

11.[]高级事件【】高级事件解析:AWT事件分为两大类:低级事

件和高级事件。低级事件是指基于构件和容器的事件,当在一个构件上

发生事件,如:鼠标的点击、拖入等;高级事件是指基于语义的事件,

它可以不和特定的动作相关联,而依赖于触发此事件的类。

12.多对多多对多解析:一名学生可以选择多门课程,一门课程也可以

由多名学生选择,因此是多对多的联系。

13.Drawstring

14.extendsApplet

15.动态连接动态连接

16.yield()yield()解析:运行状态是线程占有CPU并实际运行的状态,

如果当前线程执行了yield或者当前线程因调度策略(执行过程中,有一

个更高优先级的线程进入可运行状态,这个线程立即被调度之行,当前

线程占有的CPU被抢占;或在分时方式时,当前执行线程执行完当前

时间片),就会导致当前线程进入可运行状态。

17.ThreadTest()ThreadTest()解析:本题考查线程的创建。题目程序的功

能是按要求实现输出,通过继承Thread类来创建线程。Thread类本身

实现了Runnable接口,所以在java.lang的Thr3ad类的定义中可以发

现run()方法,通过继承Thread类,必须重写其中的run()方法定义线程

体,然后创建该子类的对象创建线程。题目缺少线程创建的语句,因此

应该填写:ThreadTestt=newThreadTest()o类ThreadTest继承了Thread

类,并将Thread类的run()方法进行了重写,run。方法的功能是实现输

出字符串。

18.[]0[]0解析:本题主要考查do-while循环和运算符的用

法。注意do-while与while的区别及前缀一和后缀--的区别。

19.传值传值解析:Java中的方法的参数传递是传值调用,而不是地址

调用,方法不能改变参数值,但可以改变变量值,两个对象之间的参数

字段不能相互交换。

20.[]0[]0解析:根据冒泡排序算法思想可知,若待排序的初始

序列为“正序”序列,则只需进行一趟排序,在排序过程中进行n-1次关

键字间的比较,且不移动和交换记录,这种情况是冒泡排序的最好情况,

故冒泡排序算法在最好的情况下的元素交换次数为0。

21.D解析:一个算法程序所占的存储空间包括算法程序所占的空间、输

入的初始数据所占的存储空间以及算法程序执行过程中所需要的额外

空间,而不单是算法执行过程中所需要的存储空间。因此,答案为D。

22.D解析Java中的移位运算符包括>>、<<、>>>、&、I、人、〜。

其中>>表示算术右移,<<表示算术左移,>>>表示逻辑右移。不

存在<<<运算。

23.B

24.B

25.A解析:让考生对常用的软件结构设计工具要有较深入的了解。常用

的软件结构设计工具是结构图(SC-structureChart),也称程序结构图。其

中,矩形内用于注明模块的功能和名字;箭头表示模块间的调用关系,

带实心圆的箭头表示传递的是控制信息,带空心圆的箭头表示传递的是

数据。注意:根据结构图设计思想,了解结构图构成的基本形式。

26.D解析:在文件系统中,相互独立的记录其内部结构的最,简单形

式是等长同格式记录的集合,易造成存储空间大量浪费,不方便使用。

而在数据库系统中,数据是结构化的,这种结构化要求在描述数据时不

仅描述数据本身,还要描述数据间的关系,这正是通过采用特定的数据

模型来实现的。

27.A

28.DD。【解析】本题考查Java中的注释语句。注释是程序设计的重要

组成部分,应熟练掌握。Java中有三类注释语句:文档注释/**...*/,

被javadoc处理,可以建立类的

\n一个外部说明性文件,所以本题正确答案是选项D;C语言注释风格

/*-.*/,用于去掉当前不再使用但仍想保留的代码等;单行注释//,

格式上要求注释符//后必须紧跟一个空格,然后才是注释信息。

29.D解析:本题考查字符串数组变量的声明。选项A和选项B的效果

是一样的,都是用来定义一个字符串数组,但没有指明数组个数,不满

足题B-要求。选项C是一个二维的字符数组,在C语言中,一个二维

的字符数组就可以表示一个一维的字符串数组,而在Java中,字符char

是基本类型,字符串Siring则是以对象的形式来表示的。选项D正确,

它定义了一个含有10个元素的字符串数组,如果没有给字符串数组赋

值,则默认为null0

30

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论