计算机二级JAVA-121
(总分:79.00,做题时间:90分钟)
一、选择题(总题数:40,分数:65.00)
1.对象状态的持久是通过______实现的。
(分数:2.00)
(分数:2.00)
A.管道
B.过滤器
C.文件
D.串行化 √
解析:[解析] 将Java程序中的对象保存在外存中,称为对象永久化。对象永久化的关键是将它的状态以一种串形格式表示出来,以便以后读该对象时能够把它重构出来。因此对Java对象读、写的过程被称为对象串行化。
2.下列关于修饰符混用的说法,错误的是______。
(分数:2.00)
(分数:2.00)
A.abstract不能与final并列修饰同一个类
B.abstract类中不可以有private的成员
C.abstract方法必须在abstract类中
D.static方法中能处理非static的属性 √
解析:
3.当浏览器重新返回到包含Applet的页面时调用的方法是______。
(分数:1.00)
(分数:1.00)
A.start() √
B.init()
C.stop()
D.destroy()
解析:[解析] Applet生命周期包括Applet的创建、运行与消亡几个状态。Applet类提供了在生命周期不同阶段响应主要事件的4种方法,这4种方法的调用次序如下图所示:
当浏览器重新返回到包含Applet的页面时调用的方法是start()。因此,本题的正确答案是A。
当浏览器重新返回到包含Applet的页面时调用的方法是start()。因此,本题的正确答案是A。
4.下列叙述中,正确的是______。
(分数:2.00)
(分数:2.00)
A.线程与进程在概念上是不相关的
B.一个线程可包含多个进程
C.一个进程可包含多个线程 √
D.Java中的线程没有优先级
解析:[解析] 线程和进程在概念上是相关的,一个进程可包含多个线程,Java中的线程是具有优先级的。
5.设计程序时,应采纳的原则之一是______。
(分数:2.00)
(分数:2.00)
A.程序的结构应有助于读者的理解 √
B.不限制goto语句的使用
C.减少或取消注释行
D.程序越短越好
解析:[解析] 程序设计的风格主要强调程序的简单、清晰和可理解性,以便读者理解。程序滥用goto语句将使程序流程无规律,可读性差;添加注释行有利于对程序的理解,程序的长短要依据实际的需要而定,并不是越短越好。
6.下面的代码中方法unsafe()有异常发生,那么可以加在第一行的语句为______。
{
if(unsafe())
{
//do something
}
else if(safe())
{
//do the other}
}
Ⅰ:public void methodName()
Ⅱ:public void methodName() throw IOException
Ⅲ:public void methodName() throws IOException
Ⅳ:public void methodName() throws Exception
(分数:2.00)
{
if(unsafe())
{
//do something
}
else if(safe())
{
//do the other}
}
Ⅰ:public void methodName()
Ⅱ:public void methodName() throw IOException
Ⅲ:public void methodName() throws IOException
Ⅳ:public void methodName() throws Exception
(分数:2.00)
A.Ⅲ、Ⅳ √
B.Ⅱ、Ⅲ、Ⅳ
C.Ⅰ、Ⅲ
D.Ⅰ、Ⅳ
解析:[解析] IOException异常类是Exception的子类。根据多态性的定义,IOException对象也可以被认为是Exception类型。还要注意,在方法声明中发出异常应用关键字 throws。
7.将一个容器panell放到容器framel中的方法是______。
(分数:2.00)
(分数:2.00)
A.framel.insert(panell)
B.framel.add(panell) √
C.framel.addJPanel(panell)
D.flamel.insertJPanel(panell)
解析:[解析] 本题考查容器的嵌套。将—个容器panell放到容器frameI中的方法和在容器—亡添加部件足一样的,使用add()方法即可。
8.在Applet生命周期中,下面方法中是在装载Applet时被调用的是______。
(分数:2.00)
(分数:2.00)
A.stop()
B.init() √
C.start()
D.destroy()
解析:[解析] 在JavaApplet的生命周期中,共有4种状态和4个方法:init()、start()、stop()和destroy()。在Applet装载时,由浏览器或appletviewer调用init()方法,通知该Applet已被加载到浏览器中,使Applet执行一些基本初始化。
9.在Java中若要使用一个包中的类时,首先要求对该包进行导入,其关键字是______。
(分数:1.00)
(分数:1.00)
A.import √
B.package
C.include
D.packet
解析:[解析] inaport语句可以导入类;package语句可以定义一个类所在的包。因此选择A。
10.Java语言中如果要使用某个包中的类时,需要使用______导入。
(分数:1.80)
(分数:1.80)
运算符优先级按从高到低排列 A.inport
B.outport
C.import √
D.input
解析:[解析] 本题考查包的导入和使用。首先用package语句说明一个包,该包的层次结构必须与文件目录的层次相同,否则,在编译时可能出现不到包的问题。Java语言中java. lang包是编译器自动导入,其他包中的类必须用import导入。
11.下列关于队列的叙述中正确的是______。
(分数:1.00)
(分数:1.00)
A.在队列中只能插入数据
B.在队列中只能删除数据
C.队列是先进先出的线性表 √
D.队列是先进后出的线性表
解析:[解析] 队列是指允许在一端进行插入而在另一端进行删除的线性表,选项A和选项B错误。允许插入的一端称为队尾,允许删除的一端称为队头。在队列中,最先插入的元素将最先能够被删除;反之,最后插入的元素将最后才能被删除。所以,队列又称为“先进先出”或“后进后出”的线性表,它体现了“先来先服务”的原则,选项C正确,选项D错误。
12.______根据判定条件的真假来决定执行哪一种操作。
(分数:1.00)
(分数:1.00)
A.多分支语句
B.条件语句 √
C.switch语句
D.For语句
解析:
13.由Java写的JavaApplet是______。
(分数:2.00)
A.一种能独立执行的应用程序
B.一组由支持Java的浏览器来运行的程序 √
C.不同于Java的另外一种程序设计语言
D.一种辅助设计工具
解析:[解析] Applet即小应用程序,是采用Java编程语言编写的程序,该程序可以包含在HTML页中,与在页中包含图像的方式大致相同。浏览器将其暂时下载到用户的硬盘上,并在Web页打开时在本地运行。一般的Applet只能通过appletviewer或者浏览器来运行,一般的Java程序通过继承Applet类也可以嵌入网页运行。
14.在数据库系统中,用户所见数据模式为______。
(分数:2.00)
(分数:2.00)
A.概念模式
B.外模式 √
C.内模式
D.物理模式
解析:[解析] 数据库管理系统的三级模式结构由外模式、模式和内模式组成。外模式或用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图。模式或逻辑模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。外模式是模式的一部分。内模式,或存储模式,或物理模式,是指数据在数据库系统内的存储介质上的表示,即是对数据的物理结构和存取方式的描述。
15.Thread类中能运行线程的方法是______。
(分数:2.00)
(分数:2.00)
&sume()
B.start()
C.run() √
D.init()
解析:[解析] resume()是Thread类提供的用于线程控制的方法;start()是Thread类中的方法,新建的线程不会自动运行,必须调用线程的start()方法才能运行该线程;run()是Thread类中的方法,在该方法中定义了线程的具体行为,线程开始执行时,就是从它的run()方法开始执行的,就像Java应用程序从main()开始、Applet从init()开始一样;init()不是Thread类中的方法。
16.下列不属于Java关键字的是______。
(分数:2.00)
(分数:2.00)
A.this
B.super
C.finally
D.NULL √
解析:[解析] Java关键字中没有NULL,应该是null。this是指当前类的对象,super是值父类的对象,finally是和try一起存在的。
17.下列特点中,属于Java虚拟机执行特点的是______。
(分数:1.00)
(分数:1.00)
A.字节代码 √
B.二进制代码
C.静态连接
D.编译执行
解析:
18.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件),下面属于系统软件
的是______。
(分数:1.80)
(分数:1.80)
A.编辑软件
B.操作系统
C.教务管理系统 √
D.浏览器
解析:[解析] 编辑软件和浏览器属于工具软件,教务系统是应用软件。
19.下列方法能够用来实现线程之间通信的是______。
(分数:1.00)
(分数:1.00)
&ify() √
B.run()
C.sleep()
D.join()
解析:[解析] wait()和notify()是java.lang.object类的方法,是实现线程通信的方法。wait()和notify()可以实现线程的同步:当某线程需要在synchronized块中等待共享数据状态改变时调用wait(),这样该线程等待并释放共享数据对象的锁,其他线程可以获得该对象的锁,并进入synchronized块对共享数据进行操作。当其操作结束后,只要调用notify()方法就可以通知正在等待的线程重新占有锁并运行。所以,notify()能够实现线程之间的通信。因此,本题的正确答案是A。
20.在多线程程序设计中,如果采用继承Thread类的方式创建线程,则需要重写Thread类的______方法。
(分数:1.80)
(分数:1.80)
A.start
B.local
C.interrupt
D.run √
解析:[解析] Thread类本身实现了Runnable接口,所以可以通过继承Thread类,并重写run()方法定义线程体,然后创建该子类的对象创建线程。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论