java期末考试题.docx

上传人:b****5 文档编号:14938326 上传时间:2023-06-28 格式:DOCX 页数:100 大小:44.27KB
下载 相关 举报
java期末考试题.docx_第1页
第1页 / 共100页
java期末考试题.docx_第2页
第2页 / 共100页
java期末考试题.docx_第3页
第3页 / 共100页
java期末考试题.docx_第4页
第4页 / 共100页
java期末考试题.docx_第5页
第5页 / 共100页
java期末考试题.docx_第6页
第6页 / 共100页
java期末考试题.docx_第7页
第7页 / 共100页
java期末考试题.docx_第8页
第8页 / 共100页
java期末考试题.docx_第9页
第9页 / 共100页
java期末考试题.docx_第10页
第10页 / 共100页
java期末考试题.docx_第11页
第11页 / 共100页
java期末考试题.docx_第12页
第12页 / 共100页
java期末考试题.docx_第13页
第13页 / 共100页
java期末考试题.docx_第14页
第14页 / 共100页
java期末考试题.docx_第15页
第15页 / 共100页
java期末考试题.docx_第16页
第16页 / 共100页
java期末考试题.docx_第17页
第17页 / 共100页
java期末考试题.docx_第18页
第18页 / 共100页
java期末考试题.docx_第19页
第19页 / 共100页
java期末考试题.docx_第20页
第20页 / 共100页
亲,该文档总共100页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

java期末考试题.docx

《java期末考试题.docx》由会员分享,可在线阅读,更多相关《java期末考试题.docx(100页珍藏版)》请在冰点文库上搜索。

java期末考试题.docx

java期末考试题

一、选择题(每道题只有一个正确答案,每小题2分,共30分)15道题

1、关于Java语言叙述错误的是:

(C)

A.Java语言具有跨平台性

B.Java是一种面向对象的语言

C.Java语言中的类可以多继承

D.Java的垃圾收集机制自动回收程序已不再使用的对象

2、以下叙述正确的是:

(B)的确台a

A.构造方法必须是public方法

B.main方法必须是public方法

C.Java应用程序的文件名可以是任意的

D.构造方法应该声明为void类型

3、关于Java中数据类型叙述正确的是:

(B)

A、整型数据在不同平台下长度不同

B.boolean类型数据只有2个值,true和false

C.数组属于简单数据类型

D.Java中的指针类型和C语言的一样

4、设intx=1,floaty=2,则表达式x/y的值是:

(D)

A.0

B.1

C.2

D.以上都不是

5、以下语句有语法错的是:

(A)

A.intx=1;y=2;z=3

B.for(intx=10,y=0;x>0;x++);

C.while(x>5);

D.for(;;);

6、关于类和对象的叙述正确的是:

(A)

A.Java的类分为两大部分:

系统定义的类和用户自定义的类

B.类的静态属性和全局变量的概念完全一样,只是表达形式不同

C.类的成员至少有一个属性和一个方法

D.类是对象的实例化

7、以下有关构造方法的说法,正确的是:

(A)

A.一个类的构造方法可以有多个

B.构造方法在类定义时被调用

C.构造方法只能由对象中的其它方法调用

D.构造方法可以和类同名,也可以和类名不同

8、以下有关类的继承的叙述中,正确的是:

(D)

A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属

B.子类只能继承父类的方法,不能继承父类的属性

C.子类只能继承父类的非私有属性,不能继承父类的方法

D.子类不能继承父类的私有属性

9、下列属于容器的组件有:

(B)

A.JButton

B.JPane

C.Canvas

D.JTextArea

10、void的含义:

(C)

A.方法体为空

B.定义的方法没有形参

C.定义的方法没有返回值

D.方法的返回值不能参加算术运算

11、关于Java中异常的叙述正确的是:

(D)

A.异常是程序编写过程中代码的语法错误

B.异常是程序编写过程中代码的逻辑错误

C.异常出现后程序的运行马上中止

D.异常是可以捕获和处理的

12、所有的异常类皆继承哪一个类?

(C)

A.java.io.Exception

B.java.lang.Throwable

C.java.lang.Exception

D.java.lang.Error

13、下面哪个不是java语言中的关键字?

(B)

A.long

B.sizeof

C.instanceof

D.const

14、为实现进程之间的通信,需要使用下列那种流才合适?

(D)

A.Datastream

B.Filestream

C.Bufferedstream

D.Pipedstream

15、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?

(D)

A.ActionListener

B.MouseListener

C.MouseMotionListern

D.ItemListener

二、填空题(每空1分,共20分)

1、面向对象程序设计所具有的基本特征是:

___抽象性___,_封装性___,_继承

性__,_多态性__

2、数组x定义如下

intx[][]=newint[3][2]

则x..length的值为____3________,

x[0].length的值为_____2_______。

3、Java中实现多线程一般使用两种方法,一是___继承Thread类_________,

二是_____实现Runnable方法__________

4、Java的图形用户界面设计中,有很多布局管理器用来摆放组件的位置,一般

用到的布局管理器有(列出四种即可)__FlowLayout_____,___GridLayout_____,

__BorderLayout_____,___CardLayout_______

5、Applet常用的方法是:

__init()_、__run()__、__stop()__和destroy()。

三、阅读程序,写出程序的输出结果(每题5分,共20分)

1、classA{

privateintprivateVar;

A(int_privateVar){

privateVar=_privateVar;

}

booleanisEqualTo(AanotherA){

if(this.privateVar==anotherA.privateVar)

returntrue;

else

returnfalse;

}

}

publicclassB{

publicstaticvoidmain(Stringargs[]){

Aa=newA

(1);

Ab=newA

(2);

System.out.println(a.isEqualTo(b));

}

}

程序的输出结果为:

____false_____

2、classA{

doublef(doublex,doubley){

returnx*y;

}

}

classBextendsA{

doublef(doublex,doubley){

returnx+y;

}

}

publicclassTest{

publicstaticvoidmain(Stringargs[]){

Bobj=newB();

System.out.println("Theprogramoutputis"+obj.f(4,6));

}

}

程序的输出结果为:

__Theprogramoutputis10_

3、publicclassUnchecked{

publicstaticvoidmain(String[]args){

try{

method();

}catch(Exceptione){

System.out.println("A");

}finally{

System.out.println("B");

}

}

staticvoidmethod(){

try{

wrench();

System.out.println("C");

}catch(ArithmeticExceptione){

System.out.println("D");

}finally{

System.out.println("E");

}

System.out.println("F");

}

staticvoidwrench(){

thrownewNullPointerException();

}

}

程序的输出结果为:

E

A

B

4、publicclassTest{

publicstaticvoidmain(String[]args){

intx;

inta[]={0,0,0,0,0,0};

calculate(a,a[5]);

System.out.println("thevalueofa[0]is"+a[0]);

System.out.println("thevalueisa[5]is"+a[5]);

}

staticintcalculate(intx[],inty){

for(inti=1;i

if(y

x[i]=x[i-1]+1;

returnx[0];

}

}

程序的输出结果为:

thevalueofa[0]is0

thevalueisa[5]is5

一、单选择题(每小题2分,共10分)

1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文

件的扩展名为()。

A..javaB..class

C..htmlD..exe

2、设x=1,y=2,z=3,则表达式y+=z--/++x的值是()。

A.3B.3.5

C.4D.5

3、在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的()

方法来完成一些画图操作。

A.start()B.stop()

C.init()D.paint()

4、不允许作为类及类成员的访问控制符的是()。

A.publicB.private

C.staticD.protected

5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类

名AB作为前缀就可以调用它,该方法头的形式为()。

A.staticvoidmethod()B.publicvoid

method()

C.finalvoidmethod()D.abstractvoid

method()

二、填空题(每空格1分,共20分)

1、开发与运行Java程序需要经过的三个主要步骤

为、

和。

2、如果一个JavaApplet源程序文件只定义有一个类,该类的类名为MyApplet,

则类MyApplet必须是类的子类并且存储该源程序文件的文件名为。

3、如果一个JavaApplet程序文件中定义有3个类,则使用Sun公司的JDK编

器编译该源程序文件将产生个文件名

与类名相同而扩展名为的字节码文件。

4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码

用字节内存空间,这样,无论是中文字符还是英文字符,都是

用字节内存空间。

5、设x=2,则表达式(x++)/3的值是。

6、若x=5,y=10,则x=y的逻辑值分别为和。

7、方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。

方法是不能被当前类的子类重新定义的方法。

8、创建一个名为MyPackage的包的语句

是,

该语句应该放在程序的位置

为:

9、设有数组定义:

intMyIntArray[]={10,20,30,40,50,60,70};则执

行以下几个语句后的输出结果是。

ints=0;

for(inti=0;i

if(i%2==1)s+=MyIntArray[i];

System.out.println(s);

10、在Java程序中,通过类的定义只能实现重继承,但通过接口的

定义可以实现重继承关系。

三、写出下列程序完成的功能。

(每小题5分,共20分)

1、publicclassSum

{publicstaticvoidmain(Stringargs[])

{doublesum=0.0;

for(inti=1;i<=100;i++)

sum+=1.0/(double)i;

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

}

}

2、importjava.io.*;

publicclassReverse

{publicstaticvoidmain(Stringargs[])

{inti,n=10;

inta[]=newint[10];

for(i=0;i

try{

BufferedReaderbr=newBufferedReader(

newInputStreamReader(System.in));

a[i]=Integer.parseInt(br.readLine());//输入一个整数

}catch(IOExceptione){};

for(i=n-1;i>=0;i――)

System.out.print(a[i]+"");

System.out.println();

}

}

3、importjava.awt.*;

publicclassabc

{publicstaticvoidmain(Stringargs[])

{newFrameOut();}

}

classFrameOutextendsFrame//Frame为系统定

{Buttonbtn;//义的窗框

FrameOut()

{super("按钮");

btn=newButton("按下我");

setLayout(newFlowLayout());

add(btn);

setSize(300,200);

show();

}

}

4、importjava.io.*;

publicclassabc

{publicstaticvoidmain(Stringargs[])

{SubClasssb=newSubClass();

System.out.println(sb.max());

}

}

classSuperClass

{inta=10,b=20;}

classSubClassextendsSuperClass

{intmax(){return((a>b)?

a:

b);}}

四、写出下面程序的运行结果(每小题10分,共30分)

1、importjava.io.*;

publicclassabc

{publicstaticvoidmain(Stringargs[])

{ABs=newAB("Hello!

","IloveJAVA.");

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

}

}

classAB{

Strings1;

Strings2;

AB(Stringstr1,Stringstr2)

{s1=str1;s2=str2;}publicStringtoString()

{returns1+s2;}

}

2、importjava.io.*;

publicclassabc

{

publicstaticvoidmain(Stringargs[])

{inti,s=0;

inta[]={10,20,30,40,50,60,70,80,90};

for(i=0;i

if(a[i]%3==0)s+=a[i];

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

}

}

3、importjava.io.*;

publicclassabc

{

publicstaticvoidmain(Stringargs[])

{System.out.println("a="+a+"\nb="+b);}

}

classSubClassextendsSuperClass

{intc;

SubClass(intaa,intbb,intcc)

{super(aa,bb);

c=cc;}

}

classSubSubClassextendsSubClass

{inta;

SubSubClass(intaa,intbb,intcc)

{super(aa,bb,cc);

a=aa+bb+cc;

}

voidshow()

{System.out.println("a="+a+"\nb="+b+"\nc="+c);}

}

五、使用Java语言编写程序。

(每小题10分,共20分)

1、编写一个字符界面的JavaApplication程序,接受用户输入的10个整数,

并输出这10个整数的最大值和最小值。

2、编写一个完整的JavaApplet程序使用复数类Complex验证两个复数1+2i

和3+4i相加产生一个新的复数4+6i。

复数类Complex必须满足如下要求:

(1)复数类Complex的属性有:

RealPart:

int型,代表复数的实数部分

ImaginPart:

int型,代表复数的虚数部分

(2)复数类Complex的方法有:

Complex():

构造函数,将复数的实部和虚部都置0

Complex(intr,inti):

构造函数,形参r为实部的初值,i为虚部的初

值。

ComplexcomplexAdd(Complexa):

将当前复数对象与形参复数对象相

加,所得的结果仍是一个复数值,返回给此方法的调用者。

StringToString():

把当前复数对象的实部、虚部组合成a+bi的字符串

形式,其中a和b分别为实部和虚部的数据。

《JAVA语言程序设计》期末考试模拟试题

参考答案及评分标准

一、单选择题(每小题2分,共10分)

1、B2、A3、D4、C5、A

二、填空题(每空格1分,共20分)

1、编辑源程序、编译生成字节码、解释运行字节码

2、Applet、MyApplet

3、javac.exe、3、.class

4、2、2

5、0

6、true、false

7、抽象(abstract)方法、最终(final)方法

8、packageMyPackage;应该在程序第一句。

9、120

10、单、多

三、写出下列程序完成的功能。

(每小题5分,共20分)

1、计算1/1+1/2+1/3+...+1/100的值。

2、从标准输入(即键盘)读入10个整数存入整型数组a中,然后逆序输出这10

个整数。

3、创建一个标题为"按钮"的窗框,窗框中显示有"按下我"字样的按钮。

4、求两个数的最大值。

四、写出下面程序的运行结果(每小题10分,共30分)

1、Hello!

IloveJAVA.

2、s=180

3、a=60

b=20

c=30

五、使用Java语言编写程序。

(每小题10分,共20分)

1、参考程序如下:

importjava.io.*;publicclassabc

{

publicstaticvoidmain(Stringargs[])

{inti,n=10,max=0,min=0,temp=0;

try{

BufferedReaderbr=newBufferedReader(

newInputStreamReader(System.in));

max=min=Integer.parseInt(br.readLine());

}catch(IOExceptione){};

for(i=2;i<=n;i++){

try{

BufferedReaderbr=newBufferedReader(

newInputStreamReader(System.in));

temp=Integer.parseInt(br.readLine());

if(temp>max)max=temp;

if(temp

}catch(IOExceptione){};

}

System.out.println("max="+max+"\nmin="+min);

}}

2、参考程序如下:

importjava.applet.*;

importjava.awt.*;

publicclassabcextendsApplet

{

Complexa,b,c;

publicvoidinit()

{

a=newComplex(1,2);

b=newComplex(3,4);

c=newComplex();

}

publicvoidpaint(Graphicsg)

{

c=plexAdd(b);

g.drawString("第一个复数:

"+a.toString(),10,50);

g.drawString("第二个复数:

"+b.toString(),10,70);

g.drawString("两复数之和:

"+c.toString(),10,90);

}

}

classComplex

{

intRealPart;//复数的实部

intImaginPart;//复数的虚部

Complex(){RealPart=0;ImaginPart=0;}

Complex(intr,inti)

{RealPart=r;ImaginPart=i;}

ComplexcomplexAdd(Complexa)

{

Complextemp=newComplex();//临时复数对象

temp.RealPart=RealPart+a.RealPart;

temp.ImaginPart=ImaginPart+a.ImaginPart;

returntemp;

}

publicStringtoString()

{return(RealPart+"+"+ImaginPart+"i");}

}

一、判断题

2、Java的源代码中定义几个类,编译结果就生成几个以“.class”后缀

的字节码文件。

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2