2020年计算机等级考试二级Java模拟练习_第1页
2020年计算机等级考试二级Java模拟练习_第2页
2020年计算机等级考试二级Java模拟练习_第3页
2020年计算机等级考试二级Java模拟练习_第4页
2020年计算机等级考试二级Java模拟练习_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

2020年计算机等级考试二级Java模

拟练习

心之所向,所向披靡

计算机等级考试二级Java模拟练习

1在进行顺序查找过程中,如果线性表中被查的元素是线性表中的最后一个,或者被查元素根本不在线性表中,则为了查

找这个元素需要与线性表中所有元素进行比较,这是顺序查找最坏的情况。

信息隐蔽是指在一个模块内包含的信息(过程或数据),对于不得要这些信息的其它模块来说是不能访问的。

2模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其它模块的联系最少且接口简单。

衡量软件的模块独立性的度量标准是耦合性和内聚性。一个模块的内聚性越强,则该模块的模块独立性越强。而内聚性是

信息隐蔽和局部化概念的自然扩展。

面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是,使用现实世界的概念抽象地思考问题从而

自然地解决问题。它强调模拟现实世界中的概念而不强调算法,它鼓励开发者在软件开发的绝大部分中都用应用领域的概念去

思考。

总体设计过程通常由两个主要阶段组成:系统设计,确定系统的具体实现方案;结构设计,确定软件结构。为确定软件结构,

首先需要从实现角度把复杂的功能进一步分解。分析员结合算法描述仔细分析数据流图中的每个处理,如果一个处理的功能过

分复杂,必须把它的功能适当地分解成一系列比较简单的功能。

3数据库概念设计的过程中,视图设计一般有三种设计次序,它们是:

1、自顶向下。这种方法是先从抽象级别高且普遍性强的对象开始逐步细化、具体化与特殊化。

2、由底向上。这种设计方法是先从具体的对象开始,逐步抽象,普遍化与一般化,最后形成一个完整的视图设计。

3、由内向外。这种设计方法是先从最基本与最明显的对象着手逐步扩充至非基本、不明显的其它对象。

4在方法中定义的局部变量在方法退出时被自动撤消,只有静态变量不会被撤消。如果未对变量指定修释符,在JAVA

中将自动将其设置为局部变量,局部变量也叫自动变量,对于方法外面的变量,将在对象被创建时一起被创建,其初值可通过

构造函数对其进行初始化。如果方法中是一个简单类型的形参,由于其是按值传递,在编译时会占用存储空间,直到该对象释

放时为止。如果形参为一个类类型,其参数是按地址传递,编译时不会为其分配空间,因此该参变量不会存在于方法中。

5类加载器(classloader)加载程序运行所需要的所有类,它通过区分本机文件系统的类和网络系统导入的类增加安全

性,这能够限制任何的特洛伊木马程序,因为本机类总是先被加载,一旦所有的类被加载完,执行文件的内存划分就固定了,

在这个时候特定的内存地址被分配给对应的符号引用,查找表(lookuptable)也被建立,由于内存划分发生在运行时,解释

器在受限制的代码区增加保护防止未授权的访问;然后字节码校验器(bytecodeverifier)进行校验,主要执行下面的检查:

类符合JVM规范的类文件格式,没有违反访问限制,代码没有造成堆栈的上溢或者下溢,所有操作代码的参数类型都是正确的,

没有非法的数据类型转换(例如将整型数转换成对象类型)发生;校验通过的字节码被解释器(interpreter)执行,解释器在

必要时通过运行时系统执行对底层硬件的合适调用。

7publicclassParent{

publicintaddValue(inta,intb){

ints;

s=a+b;

returns;

)

}

classChildextendsParent{

)

选项中_B___方法能够正确加入类Child中且父类的方法不会被覆盖。

A、intaddValue(inta,intb){//dosomething...}

publicvoidaddValue(){//dosomething...}

C、publicintaddValue(inta,intb)throwsMyException{//dosomething...}

D、publicfloataddValue(inta,intb,floatb=){//dosomething...}

解析:此题涉及方法重载(overload),方法重写(override)以及类派生时方法重写的规则。方法重载的规则是:

一、参数列表必须不同,个数的不同完全能够,如果个数相同,则参数类型的不同不会引起歧意,例如int和long,float

和double就不能作为唯一的类型不同;

二、返回值能够不同,但是不能是重载时唯一的不同点(这点和C++中不同,C++中返回类型必须一致)。

方法重写发生在类继承时,子类能够重写一个父类中已有的方法,必须在返回类型和参数列表一样时才能说是重写,否则

就是重载,java中方法重写的一个重要而且容易被忽略的规则是重写的方法的访问权限不能比被重写的方法的访问权限低!

重写的另一个规则是重写的方法不能比被重写的方法抛弃(throws)更多种类的异常,其抛弃的异常只能少,或者是其子类,

不能以抛弃异常的个数来判断种类,而应该是异常类层次结果上的种类。

此题中选取项A的错误就是重写的访问权限比被重写的方法的低,而B属于重载,选项C的错误在于比被重写的方法抛弃

了更多种类的异常。选项D中,当只传递两个变量的值的时候,那系统就不知道倒底调用哪个方法了,因为b为常量,能够不

指定,所以只有选项B是符合题意的。

8假设有以下代码

Strings="hello”;

Stringt=*'hello',;

charc[]=;

下列选项中返回false的语句是Bo

A、(t);B、(c);C、s==t;D、(newString("helloH));

解析:==操作符比较的是操作符两端的操作数是否是同一个对象,而String的equals。方法比较的是两个String对象的内

容是否一样,其参数是一个String对象时才有可能返回true,其它对象都返回假。需要指出的是由于s和t并非使用new创

建的,他们指向内存池中的同一个字符串常量,因此其地址实际上是相同的(这个能够从反编译一个简单的测试程序的结果得

到,限于篇幅不列出测试代码和反编译的分析),因此答案C也是正确的。

9欲构造ArrayList类的一个实例,此类实现了List接口,下列—B_方法是正确的。

A、ArrayListmyList=newObject();B、ListmyList=newArrayList();

C、ArrayListmyList=newList();D、ListmyList=newList();

解析:不能直接建立接口的实例,只能通过实现接口的相应的类来实现接口。

10下列程序运行的结果是_B___.

publicclassExample{

Stringstr=newStringf'good");

char[]ch={,a,,,b,,,c,};

publicstaticvoidmain(StringargsQ){

Exampleex=newExample();

(,);

(+"and");

0;

}

publicvoidchange(Stringstr,charch[]){

A、goodandabcB、goodandgbcC、testokandabcD、testokandgbc

11Java语言中,原始数据类型变量是按值传递的,引用类型变量是按地址传递的。

12要从文件”“文件中读出第10个字节到变量C中,下列_A___方法适合。

A、Fileinputstreamin=newFilelnputStream("");(9);intc=();

B、Fileinputstreamin=newFilelnputStream(,M,);(10);intc=();

C、Fileinputstreamin=newFilelnputStream(",,);intc=();

D、RandomAccessFilein=newRandomAccessFile(",,);(9);intc=();

解析:Java提供Fileinputstream是将文件作为流的方式读取,它是按照文件的顺序从0位置开始进行读取,

RandomAccessFile是随机读取数据,读取的位置不一定是从0开始,能够使用skip(n)方法来跳过n个字符,通过readByte()

读取一个字符,通过read。能够读取输入流中的一个字符。

13下列代码—C_会出错。

1)publicvoidmodify(){

2)inti,j,k;

3)i=100;

4)while(i>0){

5)j=i*2;

6)(MThevalueofjis");

7)k=k+1;

8)i-;

A、line4B、line6C、line7D^line8

解析:由于Java中声明变量并没有分配内存空间,必须通过初始化才能使用变量。

14下面关于Applet的说法正确的是_B___。

A、Applet也需要main方法B、

C、Applet能访问本地文件D、Applet程序不需要编译

解析:JavaApplet的字节码文件必须嵌入HTML的文件中并由负责解释HTML文件的WWW浏览器充当解释器来解释运

行。因此Applet不需要main方法,,因为这两个类实现了Applet程序于浏览器的通讯。

15为了系统的安全,一般情况下Applet程序不能访问本地文件,只有通过授权后才能读写。

16下列关于for循环和while循环的说法中—A一是正确的。

A、while循环能实现的操作,for循环也都能实现

B、while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

C、两种循环任何时候都可替换D、两种循环结构中循环体都不能够为空

解析:

for循环的一般形式为:

for(〈初始化>;<条件表过式〉;〈增量〉)

语句;

初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增

量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用“;”分开。

例如:

for(i=1;i<=10;i++)

语句;

上例中先给i赋初值1,判断i是否小于等于10,若是则执行语句,之后值增加1。再重新判断,直到条件为假,即i>10

时,结束循环。

注意:

1、for循环中语句能够为语句体,但要用和“}”将参加循环的语句括起来。

2、for循环中的“初始化”、”条件表达式“和“增量”都是选择项,即能够缺省,但”;”不能缺省。省略了初始化,表示不对循

环控制变量赋初值。省略了条件表达式,则不做其它处理时便成为死循环。省略了增量,则不对循环控制变量进行操作,这时

可在语句体中加入修改循环控制变量的语句。与for循环一样,while循环总是在循环的头部检验条件,这就意味着循环可能什

么也不执行就退出。

17下列关于JavaApplication与JavaApplet程序的差别描述正确的是D。

A、运行方式不同,程序结构相同,运行工具不同,受到的限制相同

B、运行方式相同,程序结构不同,运行工具不同,受到的限制相同

C、运行方式相同,程序结构相同,运行工具不同,受到的限制也不同

D、运行方式不同,程序结构不同,运行工具不同,受到的限制也不同

解析:

Application和JavaApplet的区别。

Java语言是一种半编译半解释的语言。Java的用户程序分为两类:JavaApplication和JavaApplet。这两类程序在组成

结构和执行机制上都有一定的差异,主要体现在以下几方面:

(1)运行方式不同。JavaApplication是完整的程序,能够独立运行;JavaApplet程序不能单独运行,它必须嵌入到用

HTML语言编写的Web页面中,通过与Java兼容的浏览器来控制执行。

(2)运行工具不同。JavaApplication程序被编译以后,用普通的Java解释器就能够使其边解释边执行,而JavaApplet

必须通过网络浏览器或者Applet观察器才能执行。

<3)程序结构不同。每个JavaApplication程序必定含有一个并且只有一个main方法,程序执行时,首先寻找main

方法,并以此为入口点开始运行。含有main方法的那个类,常被称为主类,也就是说,JavaApplication程序都含有一个主

类。而Applet程序则没有含main方法的主类,这也正是Applet程序不能独立运行的原因。尽管Applet没有含main方法的

主类,,它是由Java系统提供的。

(4)受到的限制不同。JavaApplication程序能够设计成能进行各种操作的程序,包括读/写文件的操作,但是Java

Applet对站点的磁盘文件既不能进行读操作,也不能进行写操作。然而,由于Applet的引入,使Web页面具有动态多媒体

效果和可交互性能,这使由名为超文本、实为纯文本的HTML语言编写成的Web页面真正具有了超文本功能,不但能够显示

文本信息,而且还能够有各种图片效果和动态图形效果,从而使页面显得生动美丽;另外,Applet使Web页面增加了按钮等

功能,从而增加了交互性。

故本题答案为Do

18、、,包含了许多图象支持的类和方法。。当前Java所支持的图像格式有:GIF、JPEG、和PNG3种。,它的显示

方法与其它两格式相同。

19假设有Stringa="A";charbsWjintc=65,下面选项中_B___是正确的。

A.If(a==b){("Equal")}

B.if(c==b){("Equal")}

Cxif(a==c){("Equal")}

Dsif(c=b){「Equal")}

解析:

由于Java是强类型语言,String不能和char,int类型变量直接进行对比。但如果char和int两类型在同一个表达式中

运算,系统是能够进行自动类型转换的,因此这两个类型的变量能够比较。

软件工程的基本原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。

信息隐蔽是指采用封装技术,将程序模块的实现细节隐藏起来,使模块接口尽量简单。

典型的数据流类型有两种:变换型和事务型。

变换型:是指信息沿输入通路进入系统,同时由外部形式变换为内部形式,进入系统的信息通过变换中心,经加工处理以后

再沿输出通路变换成外部形式离开软件系统。

事务型:在很多软件应用中,存在某种作业数据流,它能够引发一个或多个处理,这些处理能够完成该作业要求的功能,这

种数据流就叫做事务。

(GUI)的类库,它包括了许多界面元素和资源,主要在低级绘图操作、图形界面组件和布局管理、以及界面用户交互控

制和事件响应三个方面支持界面设计。

1下列关于栈的描述中错误的是—B—°

A、栈是先进后出的线性表B、栈只能顺序存储C、栈具有记忆作用

D、对栈的插入与删除操作中,不需要改变栈底指针

解析:栈是一种特殊的线性表,这种线性表只能在固定的一端进行插入和删除操作,允许插入和删除的一端称为栈顶,另一

端称为栈底。一个新元素只能从栈顶一端进入,删除时,只能删除栈顶的元素,即刚刚被插入的元素。所以栈又称先进后出表

(FILO-FirstlnLastOut)o线性表能够顺序存储,也能够链式存储,而栈是一种线性表,也能够采用链式存储结构。

2对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是—D—°

A、冒泡排序为n/2B、冒泡排序为nC、快速排序为nD、快速排序为n(n-1)/2

解析:假设线性表的长度为n,则在最坏情况下,冒泡排序需要经过n/2遍的从前往后扫描和n/2遍的从后往前扫描,需要

比较次数为n(n-1)/2o快速排序法的最坏情况比较次数也是n(n-1)/2.

3对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为_G

A、B、n/2C、D、n+1

4在进行顺序查找过程中,如果线性表中的第一个元素就是被查找元素,则只需做一次比较就查找成功,查找效率最高;

但如果被查找的元素是线性表中的最后一个元素,或者被查找的元素根本就不在线性表中,则为了查找这个元素需要与线性表

中所有的元素进行比较,这是顺序查找的最坏情况。所以对长度为n的线性表进行顺序查找,在最坏情况下需要比较n次。

5模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其它模块的联系最少且接口简单。耦合性与内聚性是

模块独立性的两个定性标准,耦合与内聚是相互关联的。在程序结构中,各模块的内聚性越强,则耦合性越弱。一般较优秀的

软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。

6计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据及相关文档的完整集合。软件具有以下特点:

①软件是一种逻辑实体,而不是物理实体,具有抽象性;②软件的生产过程与硬件不同,它没有明显的制作过程;③软件在运

行、使用期间不存在磨损、老化问题;④软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致软件移植

的问题;⑤软件复杂性高,成本昂贵;⑥软件开发涉及诸多的社会因素。

7数据独立性是数据库技术的重要特点之一。所谓数据独立性是指_D_(>

A、数据与程序独立存放B、不同的数据被存放在不同的文件中

C、不同的数据只能被对应的应用程序所使用D、以上三种说法都不对

解析:数据独立性是数据与程序间的互不依赖性,即数据库中数据独立于应用程序而不依赖于应用程序。也就是说,数据的

逻辑结构、存储结构与存取方式的改变不会影响应用程序。选项A、B、C三种说法都是错误的。

8,使用该文件作为参数的类是一D—。

A、BufferedReaderB、DatalnputStreamC、DataOutputStreamD、Fileinputstream

解析:本题考查的是文件和文件I/O。

BufferedReader用来从字符输入流中读取并缓冲字符,以提高读取字符(或字符数组)的效率。其构造方法为:

publicBufferedReader(Readerin)

publicBufferedReader(Readerin,intsz)

DatalnputStream用来以独立于机器的方式从潜在的输入流中读取Java基本数据类型。构造方法为:

DatalnputStream(lnputStreamin)

Fileinputstream用来从文件中读取字节。构造方法为:

FilelnputStream(Stringname)

FilelnputStream(Filefile)

char类型的取值范围是—B—。

A、2-7-27-1B、0-216-1C、-215-215-1D、0-28-1

9能够支持javadoc命令的注释语句是。

A、/**.・力B、/*...*/C、//D、/**...*/

解析:Java的单行注释符为〃,多行注释符有/*.」/和/**...*/(javadoc能够利用该注释符自动生成帮助文档)。

10下列不是Inputstream子类的是_C___。

A、文件输入流FileinputstreamB、对象输入流Objectinputstream

C^字符输入流CharlnputStreamD、压缩文件输入流Zipinputstream

11Java中没有CharlnputStream流。

下列方法中能够用来创建一个新线程的是_C_。

A、0方法

B、()方法

C、0方法

D、()方法

解析::

publicThread(ThreadGroupgroup,Runnabletarget,Stringname)

接口Runnable定义了run()方法;而Thread类本身也实现了Runnable接口,故创建线程有两种方法:

1、用实现Runnable接口的类的实例作target参数生成Thread类的实例

2、编写继承Thread类的类,并重写(override)run()方法

12下列关于线程优先级的说法中,正确的是_C_o

A、线程的优先级是不能改变的B、线程的优先级是在创建线程时设置的

C、在创建线程后的任何时候都能够设置D、B和C

解析:Java语言中线程的优先级是用一个介于MIN_PRIORITY和MAX_PRIORITY之间的整数来表示的。能够在创建线程

后的任何时候修改线程的优先级。

13下列代码中,将引起一个编译错误的行是_D___o

1)publicclassTest{

2)intm,n;

3)publicTest(){}

4)publicTest(inta){m=a;}

5)publicstaticvoidmain(Stringargs[]){

6)Testt1,t2;

7)intj,k;

8)j=O;k=O;

9)t1=newTest();

10)t2=newTest(j,k);

11)}

12)}

A、第3行B、第5行C、第6行D、第10行

解析:第10行代码中的参数数目比类Test的任何一个构造方法声明的形参都多,因此引起编译错误.

14阅读下列代码后

publicclassPerson{

intarr[]=newint[10];

publicstaticvoidmain(StringargsQH

(arr[1]);

)

)

15正确的说法是_A___。

A、编译时将产生错误B、编译时正确,运行时将产生错误C、输出为零D、输出为空

解析:由于数组an•声明时未用static关键字,而main。方法直接引用arr(而非通过Person的实例引用),将产生“非静

态变量不能从静态上下文中引用“(non・staticvariablecannotbereferencedfromastaticcontext)的编译错误。

16某二叉树中度为2的结点有18个,则该二叉树中有19个叶子结点。

解析:二叉树的性质3:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。本题中度为2的结

点数为18,故叶子结点数为18+1=19个。

17问题处理方案的正确而完整的描述称为算法•

18线程在生命周期中要经历5种状态,分别是新建状态、可运行状态、运行状态、-阻塞或Blocked—状态和终止

状态。

19请阅读下列程序代码,然后将程序的执行结果补充完整。

程序代码:

classthrowsException

staticvoidProc(intsei)throwsArithmeticException,ArraylndexOutOfBoundsException

("InSituation"-«-sel);

if(sel==0){

("noExceptioncaught");

return;

)

elseif(sel==1){

intiArray[]=newint[4];

iArray[1]=3;

)

)

publicstaticvoidmain(String[]args)

(

try{

Proc(O);

Proc(1);

}catch(ArraylndexOutOfBoundsExceptione){

("Catch"+e);

}finally{

(MinProcfinally");

)

)

)

执行结果:

InSituationO

noExceptioncaught

_InSituationl___

inProcfinally

解析:调用Proc(1)时,(“InSituation"+sel);控制台输出InSituationl。然后在if语句中执行sel==1分支,该分支中无任

何输出语句。

当使用Threadt=newThread(r)创建一个线程时,表达式:rinstanceofThread的值是___false__。

表达式:rinstanceofThread的语义即“r是否为Thread的实例(instance)再看Thread的构造方法(Thread有许

多构造方法,以下是最典型的构造方法,其它构造方法都是从下面的构造方法中“减掉“一些参数形成的):

Thread(ThreadGroupgroup,Runnabletarget,Stringname)

可见,Thread构造方法中没有类型为Thread的参数,故r不可能是Thread的实例

20面向对象的语言将客观世界都看成由各种对象组成。具有共同特征和行为的对象组成类,类是变量和一操作—的集

合体。

21Random类中的nextlnt(N)方法得到一个介于0至N-1之间的随机数,()是得到一个介于0与1之间的小数。

1下列数据结构中,能用二分法进行查找的是_A_o

A、顺序存储的有序线性表B、线性链表C、二叉链表D、有序线性链表

解析:二分法查找只适用于顺序存储的有序表。在此所说的有序表是指线性表中的元素按值非递减排列(即从小到大,但允

许相邻元素值相等)。

2在软件设计中,不属于过程设计工具的是_D___。

A、PDL(过程设计语言)B、PAD图C、N-S图D、DFD图

解析:软件设计工具包括:程序流程图、N-S.PAD、HIPO,判定表,PDL(伪码)。而DFD(数据流图)属于结构化分析

工具。

3在switch(expression)语句中,expression的数据类型不能是_A___。

A、doubleB、charC、byteD、short

解析:表达式expression只能返回这个几种类型的值:int、byte,short和char。多分支语句把表达式返回的值依次与每

个case子句中的值相比较,如果遇到匹配的值,则执行该case子句后的语句序列。

4下列叙述中,错误的是_D___。

A、父类不能替代子类B、子类能够替代父类C、子类继承父类D、父类包含子类

5通过继承实现代码复用:

。继承而得到的类称为子类,被继承的类称为父类。子类不能继承父类中访问权限为private的成员变量和方法,子类能

够重写父类的方法,及命名与父类同名的成员变量。

子类通过隐藏父类的成员变量和重写父类的方法,把父类的状态和行为改变为自身的状态和行为。注意:子类中重写的方法

和父类中被重写的方法要具有相同的名字,相同的参数表和相同的返回类型,只是函数体不同。

由于子类继承了父类所有的属性(私有的除外),所以子类对象能够作为父类对象使用。程序中凡是使用父类对象的地方,

都能够用子类对象来代替。一个对象能够通过引用子类的实例来调用子类的方法。

java运行时系统根据调用该方法的实例,来决定调用哪个方法。对子类的一个实例,如果子类重写了父类的方法,则运行

时系统调用子类的方法:如果子类继承了父类的方法(未重写),则运行时系统调用父类的方法。

6自定义表格类中的model部分应实现的接口是—A-。

A、AbstractTableModelB、JTableC、TableModelD、TableModelable

7下列代码中,将引起编译错误的行是_B___o

1)publicclassExercise{

2)publicstaticvoidmain(Stringargs[]){

3)floatf=;

4)f+=;

5)}

6))

A、第2行B、第3行C、第4行D、第6行

解析:float定义变量赋值时,需要在数值后面加f以标识它为浮点型,让系统知道该给它精确到多少位。

8下列关于Java多线程并发控制机制的叙述中,错误的是—B一°

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

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

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

D、Java中没有提供检测与避免死锁的专门机制,但应用程序员能够采用某些策略防止死锁的发生

解析:

1)Java中对共享数据操作的并发控制是采用传统的封锁技术。一个程序中单独的、并发的线程对同一个对象进行访问的

代码段,称为临界区。在Java语言中,临界区能够是一个语句块或是一个方法,并且用“synchronized”关键字标识。Java平

台将每个由synchronized(Object)语句指定的对象设置一个锁,称为对象锁。

2)共享数据的所有访问都必须作为临界区,使用“synchronized”进行加锁控制。用“synchronized”保护的数据也必须是

私有的,使线程不能直接访问这些数据,必须通过对象的方法。

3)Java中没有检测与避免死锁的专门机制,因此完全由程序进行控制,防止死锁的发生。

4)有时,某个线程进入“synchronized”块后,共享数据的状态并不一定满足线程的需要,它要等待其它线程将共享数据

改变为它需要的状态后才能继续执行,但由于此时它占有了该对象的锁,其它线程无法对共享数据进行操作,为此Java引入

wait()和notify(),,使实现线程通信的两个方法。

9下列操作中,不属于Applet安全限制的是—D—。

A、加载本B、读写本地文件系统C、运行本地可执行程序D、与同一个页面中的Applet通信

10在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块(桩模块)。其中,驱动模块相当

于被测试模块的主程序,它接收测试数据,并传给被测试模块,输出实际测试结果。承接模块通常用于代替被测试模块调用的

其它模块,其作用仅做少量的数据操作,是一个模拟子程序,不必将子模块的所有功能带入。

11Java语言具有可移植性、高性能、健壮性、安全性和独立于体系结构的—跨平台_特点。

解析:Java语言是一种跨平台,适合于分布式计算环境的面向对象的编程语言。具体来说,它具有如下特性:简单性、面向

对象、分布式、解释型、可靠、安全、平台无关、可移植、高性能、多线程、动态性等。

12在运行时,由Java解释器自动导入,。

解析:,所以,它被自动导入所有的程序且它是Java最广泛使用的包。

13下列程序的功能是创建了一个显示5个“Hell。!”的线程并启动运行,请将程序补充完整。

publicclassThreadTestextendsThread{

publicstaticvoidmain(Stringargs[]){

ThreadTestt=new_ThreadTest()___;

0;)

publicvoidrun(){inti=0;

while(true){CHello!");

if(i++==4)break;

)

}

解析:,重写了run()方法,实现了Java中的线程。ThreadTestt定义了空的线程对象,()启动了这个线程,因此ThreadTest

t=new;就应该是实例化该线程对象,所以空格中应填ThreadTest()o

Swing的顶层容器有:JApplet、JWindow>JDialog和_JFrame___。

顶层容器:JFrame、JApplet^JDialog和JWindow共4个。

中间容器:JPanel、JScrollPane>JSplitPane、JToolBar<)

特殊容器:JlnternalFrame、JLayeredPane>JRootPane。

基本控件:JButton、JComboBox>JList、JMenu^JSIider>JTextFieldo

不可编辑信息的构件:JLabel、JProgressBar、ToolTip、

可编辑信息的构件:JColorChooser、JFileChooser、JFileChooser>JTable>JTextArea

所有的这些构件的分类都是按功能来划分的。

14下列叙述中正确的是—D—o

A、一个逻辑数据结构只能有一种存储结构

B、数据的逻辑结构属于线性结构,存储结构属于非线性结构

C、一个逻辑数据结构能够有多种存储结构,且各种存储结构不影响数据处理的效率

D、一个逻辑数据结构能够有多种存储结构,且各种存储结构影响数据处理的效率

解析:一般来说,一种数据的逻辑结构根据需要能够表示成多种存储结构,常用的存储结构有顺序、链接、索引等存储结构。

而采用不同的存储结构,其数据处理的效率是不同的。

15Java的图形用户界面的最基本的组成部分就是构件(Component),构件是一个能够以图形化的方式显示在屏幕上

并能与用户交互的对象,但构件不能独立地显示出来,必须将构件放在一定的容器中才能够显示出来。解析:容器Container

是一个类,因为容器本身也是一个构件,具有构件的所有性质,因此继承之Component类。

16下列叙述中,错误的是_A_o

A、File类能够存储文件B、File类能够读写文件C、File类能够建立文件D、File类能够获取文件目录信

温馨提示

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

评论

0/150

提交评论