java模拟题及参考答案Word下载.docx

上传人:b****6 文档编号:18940144 上传时间:2023-01-02 格式:DOCX 页数:15 大小:26.72KB
下载 相关 举报
java模拟题及参考答案Word下载.docx_第1页
第1页 / 共15页
java模拟题及参考答案Word下载.docx_第2页
第2页 / 共15页
java模拟题及参考答案Word下载.docx_第3页
第3页 / 共15页
java模拟题及参考答案Word下载.docx_第4页
第4页 / 共15页
java模拟题及参考答案Word下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

java模拟题及参考答案Word下载.docx

《java模拟题及参考答案Word下载.docx》由会员分享,可在线阅读,更多相关《java模拟题及参考答案Word下载.docx(15页珍藏版)》请在冰豆网上搜索。

java模拟题及参考答案Word下载.docx

D.static

7.下列概念不正确的是__________。

A.在一个抽象类中能够定义抽象方法

B.定义了抽象方法的类必定是抽象类

C.在抽象类定义的方法中不可以同时用fianl和abstract说明

D.在抽象类定义的方法中可以同时用static和abstract说明

8.关于类变量的正确说法是__________。

A.在类中定义的变量

B.由class进行修饰

C.由static进行修饰,类中的任何对象访问时,都将取得相同的数值

D.实例变量是用static关键字声明的

9.设数组Array由以下语句定义

intiarray=newint[10];

则数组的最后一个元素的正确引用方法为__________。

A.iarray[10]

B.iarray[0]

C.iarray[iarray.length]

D.iarray[9]

10.continue在循环语句中的作用是__________。

A.停止本轮循环中剩余语句的执行

B.只能停止当前层循环的执行

C.实现任何层循环的停止运行

D.只能停止最外层循环的执行

11.下面关于构造方法的错误说法是__________。

A.构造方法不可以重载

B.构造方法一定要和类名相同

C.构造方法没有返回值

D.构造方法也属于类的方法,用于创建对象的时候给成员变量赋值

12.顺序执行下列程序语句后,b的值是__________。

Stringa="

HelloWorld!

"

;

Stringb=a.substring(6,12);

A.World

B.World!

C.hello

D.null

13.float型数据在计算机内所占用的存储空间为__________字节。

A.2

B.4

C.8

D.16

14.在图形界面上进行绘画的paint()方法使用的是______类型的参数。

A.String

B.Font

C.Graphics

D.Color

15.下面是关于多态的陈述,其中正确的说法是__________。

A.多态性不具有面向对象程序设计的特征

B.多态性是指相同的方法,可以有不同的实现

C.多态性通过方法的重载和覆盖来实现

D.Java中,多态就是指一个类可以构造不同形态的对象

二、程序填空题(本大题2道小题,每空3分,共30分)。

1.下面是一个Application程序,接受用户从键盘输入的10个整数,然后将这10个数按从大到小的方式排序并输出,请将程序补充完整。

importjava.io.*;

publicclassPaiXu{

publicstaticvoidmain(Stringargs[]){

intarr[]=new______

(1)______,i,j;

for(i=0;

i<

10;

i++){

BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));

arr[i]=Integer.parseInt(______

(2)______);

i++)

for(______(3)_____;

j<

10;

j++)

if(arr[i]>

arr[j]){

intt=arr[i];

arr[i]=arr[j];

______(4)_____;

System.out.println("

排序结果为:

);

i++)

______(5)_____;

}

1):

【int[10]】

2):

【br.readLine()】

3):

【j=i】【j=i+1】

4):

【arr[j]=t】

5):

【System.out.print(arr[i]+"

\t"

)】

2.下面的Applet实现在窗体上按输入值作为半径画圆的功能(如图),该程序界面上有一个标签、一个文本框和两个命令按钮;

当在文本框中输入圆半径(整数)并单击"

绘图"

按钮后,将在窗体上画出一个红色圆,单击"

清除"

按钮则清除所画内容,请将程序补充完整。

(图示是用Eclipse运行的显示效果,在此仅作参考)。

importjava.awt.*;

importjava.awt.event.*;

importjava.applet.*;

publicclassDrawingextendsApplet{

TextFieldte=newTextField(5);

Labella1=newLabel("

请输入圆半径:

Buttondraw=

(1);

Buttonclear=newButton("

Panelp1=newPanel(newFlowLayout());

Panelp2=newPanel(newFlowLayout());

intr;

publicvoidinit(){

this.setLayout(newBorderLayout());

p1.add(la1);

p1.add(te);

this.add(p1,"

North"

p2.add(

(2));

//draw

p2.add(clear);

this.add(p2,"

South"

draw.addActionListener((3));

//newdrawL()

clear.addActionListener(newclearL());

publicvoidpaint(Graphicsg){

g.setColor(newColor(255,0,0));

g.fillOval(30,50,(4));

//2*r,2*r

g.setColor(newColor(0,0,0));

g.drawString("

圆半径为:

+r,56,46);

classdrawLimplementsActionListener{

publicvoidactionPerformed(ActionEvente){

intj=Integer.parseInt(te.getText());

(5)r=j;

repaint();

classclearLimplementsActionListener{

te.setText(null);

r=0;

【newButton("

【draw】

【newdrawL()】

【2*r,2*r】

【r=j】

三、操作题

注意:

编程所需的常用方法参考见最后。

(一)程序调试题(本大题3小题,共8个错误,每改正一个2.5分,共20分)

1.从"

C:

\素材"

中取出check1.java文件,该程序有三个错误。

该程序运行时应输出如下的结果:

请按题中的要求调试修改该程序,并将结果(包括源文件、字节码文件)保存到C:

\KS目录中。

请务必在所修改的语句后加上注释语句:

//*****。

Check1:

publicclassTest2_1{

publicvoidmain(Stringargs[]){//*****插入static

inti;

for(i=1;

i<

=8;

i+=1)//*****(i=1;

i+=1)->

(i=1;

i+=2)

disp(i);

staticvoiddisp(inti){

for(intk=8;

k>

=i;

k--)

System.out.print("

"

for(intk=1;

k<

k++)

*"

//*****print–〉println

2.从"

中取出check2.java文件,该程序有两个错。

称序的功能是:

由键盘输入一个小于”100”的数字字符串(例如"

38"

),将它转换成整数,然后计算并输出从该整数到100之间所有整数的累加和。

publicclasscheck2{

publicstaticvoidmain(Stringargs[])throwsIOException{

intnum1,s;

Stringstr;

BufferedReaderbuf;

buf=newBufferedReader(newInputStreamReader(System.in));

请输入整数:

str=buf.readLine();

num1=Integer.parseInt(str);

if(num1>

=100)

输入的数已超出范围"

else

{s=0;

for(inti=num1;

=100;

i++)//*****‘<

=’->

‘<

s=s*i;

//*****‘*’->

‘+’

Thesumis"

+s);

3.从"

中取出check3.java文件,该程序在Item类中有三个错。

运行该程序应产生如下结果:

4foods

14televisions

10foods

请按题中的要求调试修改该程序,并将结果(包括源文件、字节码文件)保存到C:

请务必在所修改的语句后加上注释语句:

//*****。

publicclasscheck3{

publicvoidmain(String[]args){

Itemt1=newItem("

food"

System.out.println(t1);

Itemt2=newItem("

television"

System.out.println(t2);

t2.setValue(10);

classItem{

privateStringname;

privatestaticintvalue=0;

publicItem(StringtheName){

theName=name;

//*****theName=name->

name=theName

value=value+theName.length();

publicvoidsetValue(intnewValue){

value=newValue;

publicStringtoString{//*****toString->

toString()

returnvalue+"

+name;

//*****name->

name+’s’

(二)编程题(本题2小题,第1题15分,第2题20分,共35分)

1.从"

中取出mn.java文件,在该文件基础上进行补充,完成所需内容的编写。

该程序的功能是:

打印数组中所有的字符串。

若数组中有相同的字符串,则相同的字符串只打印一次。

其关键程序段以方法实现。

它是一个以字符串数组为参数,名为uniqueStrings()的方法。

请编写该方法。

程序完成后将程序编辑及运行所需要的所有文件(包括源程序文件、字节码文件)存放到C:

\KS目录下。

若执行正确的程序将输出如下结果:

one

two

three

参考程序:

publicclassmn{

publicstaticvoidmain(String[]args){

String[]words={"

one"

"

two"

three"

};

uniqueStrings(words);

privatestaticvoiduniqueStrings(String[]words){

for(inti=0;

words.length;

i++){

booleanunique=true;

for(intj=0;

j<

i;

j++){

if(words[i].equals(words[j]))

unique=false;

if(unique)

System.out.println(words[i]);

中取出Test5.java文件。

Test5创建三个Locker类的对象,调用相应的方法,完成给定要求的输出。

Locker类用来存放银行保管箱租用者的姓名(hirer)、柜号(cabinetNum)、箱号(num)以及是否空闲(isVacant)的信息。

当程序正确完成后,产生的输出如下所示:

\>

javaTest5

柜号:

3,箱号:

301当前由李瑞杰使用

302当前由张佳利使用

2,箱号:

201当前由张佳利使用

现在空闲柜号:

3,箱号:

301当前空闲

同一租用者柜号:

3,箱号:

302当前由张佳利使用

2,箱号:

具体要求:

(1)根据输出结果,完成main方法;

(2)程序中必须调用Student类实例方法至少一次;

(3)不能改变已给定的程序语句。

程序完成后将程序编辑及运行所需要的所有文件(包括源程序文件、字节码文件及html文件)存放到C:

Test5.Java

publicclassTest5{

publicstaticvoidmain(String[]args){

Lockerlock1,lock2,lock3;

lock1=newLocker("

李瑞杰"

3,301);

lock2=newLocker("

张佳利"

3,302);

lock3=newLocker("

2,201);

 

//在此处完成对应方法

publicclassLocker{

privateintnum,cabinetNum;

privatebooleanisVacant;

privateStringhirer;

publicLocker(Stringhire,intcabinet,intnum){

hirer=hire;

cabinetNum=cabinet;

this.num=num;

isVacant=false;

publicbooleangetIsVacant(){

returnisVacant;

publicvoidsetIsVacant(booleanb){

isVacant=b;

if(isVacant)

hirer="

publicbooleanhasSameHirer(LockerotherL){

if(hirer.equals(otherL.hirer))

returntrue;

returnfalse;

publicStringtoString(){

Stringstr="

+cabinetNum+"

箱号:

+num;

str+="

当前空闲"

else

当前由"

+hirer+"

使用"

returnstr;

参考答案:

System.out.println(lock1.toString());

System.out.println(lock2.toString());

System.out.println(lock3.toString());

System.out.println();

lock1.setIsVacant(true);

//使lock1设置为空闲

if(lock1.getIsVacant())

System.out.println("

现在空闲"

+lock1.toString());

if(lock2.hasSameHirer(lock3)){

同一租用者"

+lock2.toString());

+lock3.toString());

编程常用方法参考:

Integerclass

publicIntparseInt(Stringstr)

String

publicStringsubstring(intbeginIndex,intendIndex)

publicintlength()

publicbooleanequals(Stringcomparison)

Math

publicstaticdoublerandom()

Graphicsclass

voidsetColor(Colorcolor)

voiddrawRect(intx,inty,intwidth,intheight)

voiddrawOval(intx,inty,intwidth,intheight)

voidfillRect(intx,inty,intwidth,intheight)

voidfillOval(intx,inty,intwidth,intheight)

voiddrawLine(intx1,inty1,intx2,inty2)

ButtonandTextFieldclasses

voidaddActionListener(ActionListenerlistener)

StringgetText()

Appletclass

voidpaint(Graphicsg)

voidinit()

voidsetLayout(LayoutManagerlayout);

voidrepaint()

ObjectgetSource()

ActionListenerinterface

voidactionPerformed(ActionEvente)

MouseListenerinterface

voidmousePressed(MouseEvente)

voidmouseReleased(MouseEvente)

voidmouseClicked(MouseEvente)

voidmouseEntered(MouseEvente)

voidmouseExited(MouseEvente)

Mouseclass

intgetX()

intgetY()

voidaddMouseListener(MouseListenerlistener)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1