2018年3月计算机二级Java语言程序设计:强化练习题(二)
1.下列程序的输出结果是()。
publicclassArrayTest
{
publicstaticvoidmain(Stringargs[])
{
int[]intArray=newint[3]
for(inti=0;i<3;i++)
{
intArray[i]=i+2:
system.out.println("lntArray["+i+"]¨=
intArray[i]);
}
System.out.println("----------");
intarrlen=4:
IntArray=newint[arrLen];
For(intj=intArray.length;j>=0;j--)
{
intArray[j]=j*3;
system.out.println("hello"+intArray[j]);
}
}
}
A.编译未通过
B.编译通过,但运行错误
C.可以运行,但有错误
D.以上都不对
2.下列程序的运行结果是()。
Publicclasssun
{
Publicstaticvoidmain(Stringargs[])
{
intx=4,y=0;
if(Math.pow(X,2)==16)
y—x;
if(Math.pow(X,2)<15)
y—l/x;
if(Math.pow(X,2)>15)
y=(int)Math.pow(X,2)+1;
system.out.println(y);
}
}
A.4
B.17
C.18
D.0.25
3.自定义的异常类可从()类继承。
A.Error
B.AWTError
C.VirtualMachineError
D.Exception及其子集
4.t为int类型,进入下面的循环之前,t的值为0。则下列说法中正确的是()。while(t=1){…}
A.循环控制表达式的值为0
B.循环控制表达式的值为1
C.循环控制表达式不合法
D.以上说法都不对
5.下面for循环语句的执行结果是()。
for(intj=10;j>3;j--)
if(j1=O)
j--;
--j;
--j;
System.OUt.println(j);
}
A.63
B.74
C.62
D.73
6.关于Applet执行的操作,下面说法正确的是()。
A.在运行时调用其他程序
B.可以进行文件读/写操作
C.不能装载动态连接库和调用任何本地方法
D.试图打开一个socket进行网络通信,但是所连接的主机并不是提供Applet的主机
7.下列关于Applet生命周期的说法,正确的是()。
A.voidinit()在Applet下载前调用
B.voidstart()只在初始化之后调用
C.voidstop()在关闭浏览器时调用
D.stop()总在voiddestroy()之前被调用
8.对于下面语句的说法,不正确的是()。ThreadthrObj=newThread():
A.系统没有为该线程对象分配资源
B.只能启动或者终止
C.创建了一个空的线程对象
D.可以调用其他方法
9.在Java中,线程是()。
A.分时的
B.抢占式的
C.非抢占式的
D.非分时的
10.下列关于线程和进程的说法正确的是()。
A.进程结构的所有成分都在用户空间内
B.用户程序能够直接访问进程涉及的数据
C.线程是内核级的实体
D.线程结构驻留在用户空间中
参考答案
1.B。【解析】这是一道考查数组引用的题,目的是考查如何在程序中引用初始化后的数组。引用的方式为arrayName[index],其中index为数组的下标,可以为整数、变量和表达式,范围从0开始,一直到数组的长度减l。在Java语言中,是要对数组下标进行检查的。因此,当程序运行到数组的长度值时,就发生了越界现象。
2.B。【解析】本题是考查对if-else分支结构和几个标准函数的理解。pow(x,y)方法是X的Y次幂,程序中pow(x,2)满足第1个if语句和第3个if语句,条件变量y将被赋值两次,但对于同一个变量来说,只能存储最后一个所赋的值。
3.D。【解析】Java语言中Throwable类分为Error和Exception两个子类。自定义的异常类是从Exception及其子集类继承的。
4.B。【解析】本题考查对while循环及逻辑表达式的理解。循环控制表达式为赋值表达white式t=1,永远为l(为真)。
5.B。【解析】该题考查对for循环的理解。①当j=10时,满足条件j>3,由于for循环中j--执行了1次,j的值为9,执行if语句,j%3=0不满足条件,继续向下执行2次--j,j的值为7:②当j=7时,满足条件j>3,由于for循环中J一一执行了1次,j的值为6,执行if语句,i%3=0不满足条件,继续向下执行2次--j,j的值为4。
6.C。【解析】本题考查Applet的概念。Java虚拟机为Applet提供能够良好运行的沙箱,一旦它们试图离开沙箱则会被禁止。由于Applet是通过网络传递的,这就不可避免地使人想到会发生安全问题。例如,有人编写恶意程序通过小应用程序读取用户密码并散播到网络上,这将会是一件非常可怕的事情。所以,必须对小应用程序进行限制。浏览器禁止Applet运行任何本地可运行程序,选项A错误。禁止加载本地库或方法,Applet只能使用自身的代码或Applet浏览器提供的JavaAPl,不允许装载动态连接库和调用任何本地方法,选项C正确。禁止读/写本地计算机的文件系统,选项B错误。禁止与没有提供Applet的任何主机建立网络连接,如果Applet试图打开一个socket进行网络通信,所连接的主机必须是提供Applet的主机,选项D错误。
7.D。【解析】本题考查Applet生命周期的概念。Applet生命周期是考试重点考查内容,应该加以重视。init()在Applet下载时调用,而不是下载前调用,选项A错误。start()在初始化之后以及在Applet被重新访问时调用,不仅仅只是在初始化之后调用,选项B错误。stop()在停止执行时调用,关闭浏览器时调用的是destroy(),选项C错误。destroy()在关闭加载Applet的浏览器从系统中撤出时调用,此时Applet必然调用stop()方法停止其运行,然后才能调用destroy()方法从内存卸载并释放该Applet的所有资源。注意理解Applet的执行过程。
8.D。【解析】本题考查线程的创建。通过new命令创建一个线程对象后,该线程对象就处于创建状态,上面的语句只是创建了一个空的线程对象,选项C说法正确。此时,系统并没有为该线程对象分配资源,选项A说法正确。处于这种状态的线程,只能启动或者终止,选项B说法正确。该线程此时并不能调用其他方法,如果调用其他方法就会失败并引起非法状态处理,选项D说法错误。
9.B。【解析】本题考查线程的调度。Java的线程调度策略是一种基于优先级的抢占式调度,选项B正确。Java这种抢占式调度可能是分时的,即每个等待池中的线程轮流执行,也可以不是,即线程逐个运行,具体采用哪种方式,由具体JVM而定。线程一般通过使用sleep()等方法保证给其他线程运行时间。
10.D。【解析】本题考查线程和进程的概念。线程与进程在概念上是相关的,进程由代码、数据、内核状态和一组寄存器组成,而线程是由表示程序运行状态的寄存器,如程序计数器、栈指针以及堆栈组成,线程不包括进程地址空间中的代码和数据,线程是计算过程在某一时刻的状态。进程是一个内核级的实体,进程结构的所有成分都在内核空间中,一个用户程序不能直接访问这些数据。线程是一个用户级的实体,线程结构驻留在用户空间中,能够被普通的用户级方法直接访问。
文章推荐:
考无忧小编推荐:
更多计算机等级考试真题及答案>>>点击查看
想知道更多关于计算机等级报考指南、考试时间和考试信息的最新资讯在这里>>>点击查看