JAVA综合复习题.docx

上传人:b****7 文档编号:10487238 上传时间:2023-02-13 格式:DOCX 页数:17 大小:24.93KB
下载 相关 举报
JAVA综合复习题.docx_第1页
第1页 / 共17页
JAVA综合复习题.docx_第2页
第2页 / 共17页
JAVA综合复习题.docx_第3页
第3页 / 共17页
JAVA综合复习题.docx_第4页
第4页 / 共17页
JAVA综合复习题.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

JAVA综合复习题.docx

《JAVA综合复习题.docx》由会员分享,可在线阅读,更多相关《JAVA综合复习题.docx(17页珍藏版)》请在冰豆网上搜索。

JAVA综合复习题.docx

JAVA综合复习题

JAVA综合复习题

一、选择题:

1.下面的哪个保留字不能作为函数的返回类型()

A.voidB.intC.newD.long

2.程序中主函数的名字为()。

A.mainB.MAINC.MainD.任意标识符

3.设inta=12;则执行完语句a+=a*a;后,a的值是()。

A.12B.144C.156D.288

4.下面有关构造函数的描述中,正确的是()。

A.构造函数可以带有返回值B.构造函数的名字与类名完全相同

C.构造函数必须带有参数D.构造函数必须定义,不能缺省

5.构造函数是在()时被执行的。

A.程序编译B.创建对象C.创建类D.程序装入内存

6.使用派生类的主要原因是()

A.提高代码的可重用性B.提高程序的运行效率

C.加强类的封装性D.实现数据的隐藏

7.若a=10,b=20,c=30,则表达式!

(a+b)+c-30&&b+c/3的值为()。

A、1B、0C、10D、30

8、设x,y,z为整型变量,x=10,y=-5,z=8,则x++-y+(++z)的值为()。

A、25B、24C、23D、22

9、设x,y,z为整型变量,则命题“x或y中有一个大于z”的逻辑表达式为()。

A、x>z&&y>zB、x>z||y>zC、x>zD、y>z

10.下面哪项可以得到数组元素的个数,java中定义数组名为abc,()

A、abc.length()B、abc.lengthC、len(abc)D、ubound(abc)

11.下面哪个修饰符修饰的变量是所有同一个类生成的对象共享的()

A、publicB、privateC、staticD、final

12.若i为10,j为20,则表达式m=i>j?

i:

j的值为()。

A.m=10B.m=20C.m=falseD.m=true

13.下面关于构造函数的说法不正确的是()

A、构造函数也属于类的方法,用于创建对象的时候给成员变量赋值。

B、构造函数不可以重载。

C、构造函数没有返回值。

D、构造函数一定要和类名相同。

14.数组中可以包含什么类型的元素?

_____________。

A、int型B、string型C、数组D、以上都可以

15.声明常量PI,采用哪种格式:

a.finalstaticPI=3.14159;

b.finalfloatPI=3.14159;

c.staticdoublePI=3.14159;

d.finaldoublePI=3.14159;

16.将一个double类型的变量d赋值给int类型的变量x,采用哪种格式是正确的:

a.x=(long)d

b.x=(int)d;

c.x=d;

d.x=(float)d;

17.根据Java的命名规范,下面哪一个是常量名:

a.MAX_VALUE

b.Test

c.read

d.ReadInt

18.下面哪条赋值语句是错误的:

a.floatf=-34;

b.intt=23;

c.shorts=10;

d.floatf=34.0;

19.假设定义了如下Java类:

publicclassTest{

}

那么为了正确编译这个类,类的文件名应该命名为:

a.Test.class

b.Test.doc

c.Test.txt

d.Test.java

e.以.java作为扩展名的任意文件名

20.编译Test.java文件的正确命令是:

a.javaTest

b.javaTest.java

c.javacTest.java

d.javacTest

e.JAVACTest.java

21.若要运行ByteCode.class文件,下列哪个命令是正确的?

a.javaByteCode

b.javacByteCode.class

c.javacByteCode.java

c.javacByteCode

d.JAVACByteCode

22."Welcome"+1+1*2是什么?

a.Welcome11*2

b.Welcome4

c.Welcome12

d.Welcome3

23.下列语句的打印结果为:

doublex=10.1;

inty=(int)x;

System.out.println("xis"+x+"andyis"+y);

a.xis10andyis10

b.xis10.0andyis10.0

c.xis11andyis11

d.xis10.1andyis10

e.xis10.1andyis10.0

24.在方法中声明的变量被称为________变量.

a.静态

b.实例

c.局部

d.全局

e.类

25.下面关于数组的声明哪个正确的?

a.char[]charArray=newchar[26];

b.int[]words=newwords[10];

c.char[]charArray="ComputerScience";

d.double[3]nums={3.5,35.1,32.0};

26.下列哪条语句能正确初始化字符串"123"?

a.String[]string={'1','2','3'};

b.Stringstring={'1','2','3'};

c.Strings="123";

d.Strings=newString("123");

e.canddarebothfine,butcisbetter.

27.一个子类可以继承父类的那些属性:

a.用private修饰词修饰的属性

b.用protected修饰词修饰的属性

c.用public修饰词修饰的属性

d.a和c均正确

e.b和c均正确

28.假设s1和s2是两个字符串,那么下面那条语句不正确?

a.Strings=newString("newstring");

b.Strings3=s1+s2;

c.Strings3=s1.concat(s2);

d.s1>=s2

e.inti=s1.length();

29.运行下列程序的输出结果为:

publicclassC{

publicstaticvoidmain(String[]args){

Object[]o={newA(),newB()};

System.out.print(o[0]);

System.out.print(o[1]);

}

}

classAextendsB{

publicStringtoString(){

return"A";

}

}

classB{

publicStringtoString(){

return"B";

}

}

a.AB

b.BA

c.AA

d.BB

e.以上都不是

30.假设下面这条语句是父类中的方法,选项中的方法是子类中的方法。

选项中的哪个方法覆盖了以下的方法:

protecteddoublexMethod(intx){…};

a.privatedoublexMethod(intx){…}

b.protectedintxMethod(doublex){…}

c.publicdoublexMethod(doublex){…}

d.publicdoublexMethod(intx){…}

31.阅读下列程序段:

classFoo{

inti;

staticints;

voidimethod(){

}

staticvoidsmethod(){

}

}

那条语句是错误的?

a.Foo.smethod();

b.System.out.println(Foo.s);

c.f.imethod();

d.System.out.println(Foo.i);

32.分析下面的代码:

classTest{

publicstaticvoidmain(String[]args){

doubleradius=5;

finalstaticdoublePI=3.15169;

doublearea=radius*radius*PI;

System.out.println("Areais"+area);

}

}

a.程序有语法错误,因为变量radius没有被初始化

b.程序有语法错误,因为静态常量PI被定义在方法内部

c.程序没有语法错误,但是会引起一各运行时错误,因为radius变量没有被初始化

d.程序编译运行正确

33.下面的代码错在哪里?

classTest{

publicstaticvoidmain(String[]args){

Cc=newC(5.0);

System.out.println(c.value);

}

}

classC{

intvalue=2;

}

a.程序有一个编译错误,因为类C没有定义缺省的构造方法。

b.程序有一个编译错误,因为类C没有定义带有一个double类型参数的构造方法。

c.程序编译正确,但是不能运行,因为类C不是public的。

.

d.a和b都是程序错误的根源。

34.下面的代码错在哪里?

publicclassFoo{

publicvoidmethod1(){

Circlec;

System.out.println("Whatisradius"+c.getRadius());

c=newCircle();

}

}

a.程序有一个编译错误,因为类Foo没有main方法

b.程序有一个编译错误,因为类Foo没有缺省构造方法

c.程序在println语句处有一个编译错误,因为变量c没有被初始化

d.程序编译错误,但是有一个运行错误,因为当变量println语句执行的的时候,c的值为null。

35.运行下列程序的输出结果为:

classA{

publicA(){

System.out.println(

"ThedefaultconstructorofAisinvoked");

}

}

classBextendsA{

publicB(Strings){

System.out.println(s);

}

}

publicclassC{

publicstaticvoidmain(String[]args){

Bb=newB("TheconstructorofBisinvoked");

}

}

a.无输出

b."TheconstructorofBisinvoked"

c."ThedefaultconstructorofAisinvoked"

"TheconstructorofBisinvoked"

d."TheconstructorofBisinvoked"

"ThedefaultconstructorofAisinvoked"

e."ThedefaultconstructorofAisinvoked"

36.分析下列代码:

publicclassTest{

publicstaticvoidmain(String[]args){

int[]x={0,1,2,3,4,5};

xMethod(x,5);

}

publicstaticvoidxMethod(int[]x,intlength){

for(inti=0;i

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

}

}

a.程序显示01234

b.程序显示01234,并且发生一个运行时错误

c.程序显示012345

d.程序显示012345,并且发生一个运行时错误

37.分析下面的代码:

classTest{

publicstaticvoidmain(String[]args){

Aa=newA("test");

a.print();

}

}

classA{

Strings;

A(Strings){

this.s=s;

}

privatevoidprint(){

System.out.println(s);

}

}

a.程序编译正确,但是有一个运行时错误,因为print()是私有的.

b.程序有语法错误,因为print()是私有的

c.程序运行正确并且在屏幕上显示:

Test.

d.以上答案均不正确

二、程序阅读题

1.写出程序的运行结果。

publicclassTest{

publicstaticvoidmain(String[]args){

Aa=newA(3);

}

}

classAextendsB{

publicA(intt){

Syestem.out.println("A'sconstructorisinvoked");

}

}

classB{

publicB(){

System.out.println("B'sconstructorisinvoked");

}

}

2.写出程序的运行结果:

classA{

publicA(){

System.out.println(

"ThedefaultconstructorofAisinvoked");

}

}

classBextendsA{

publicB(Strings){

System.out.println(s);

}

}

publicclassC{

publicstaticvoidmain(String[]args){

Bb=newB("TheconstructorofBisinvoked");

}

}

3.写出程序运行结果:

importjava.util.*;

publicclassTestextendsObject{

publicstaticvoidmain(String[]args){

Dated1=newDate();

Dated2=newDate(349324);

Dated3=d1;

Dated4=(Date)d1.clone();

System.out.println("

(1)"+(d1==d2));

System.out.println("

(2)"+(d1==d3));

System.out.println("(3)"+d1.equals(d2));

System.out.println("(4)"+d1.equals(d3));

}

}

4.阅读以下程序,输出结果为。

importjava.io.*;

publicclassMyTest

{

publicstaticvoidmain(Stringargs[])

{

inti=0;

intj=5;

for(;i<=j;j--,i++);

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

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

}

}

5.阅读以下程序,输出结果为。

publicclassSum

{publicstaticvoidmain(Stringargs[])

{doublesum=0.0;

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

sum+=1.0/(double)i;

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

}

}

6.阅读以下程序,输出结果为。

importjava.io.*;

publicclassClass1

{

publicstaticvoidmain(Stringargs[]){

inti,Max,Min;

inta[]={12,67,8,98,23,56,124,55,99,100};

Max=Min=a[0];

for(i=1;i

if(a[i]

if(a[i]>Max)Max=a[i];

}

System.out.println(Max+""+Min);

System.out.println();

}

}

三、程序查错及改错题

1.标出下列程序段中的错误及错误原因,并写出改正的方法。

classTest{

publicstaticvoidmain(String[]args){

Aa=newA();

a.print();

}

}

classA{

Strings;

A(Strings){

this.s=s;

}

publicvoidprint(){

System.out.print(s);

}

}

2.指出程序的错误,并解释错误的原因和改正方法。

classA{

publicA(intx){

}

}

classBextendsA{

publicB(){

}

}

publicclassC{

publicstaticvoidmain(String[]args){

Bb=newB();

}

}

 

四、编程题

1.编写出一个简单的Java程序,实现最简单的显示“helloworld!

”的功能。

并简述编译,配置和运行它的方法。

2.假设类Book被定义为具有以下属性:

Authorauthor;

Stringtitle;

booleanfiction;

按照Java的命名规范为每个属性编写标准的“get”/“set”方法。

3.编写一个名为Fan的类模拟风扇。

此类包括属性speed、on、radius、color。

要求为属性提供get/set方法,并提供toString方法来返回包含类中所有属性值的字符串。

假设风扇有三种固定的速度,用常数1、2、3表示慢、中、快。

编写一个用户程序测试Fan类。

在用户程序中创建一个Fan对象,将它设置成最大速度、半径为10、黄色、打开状态。

调用toString方法显示改对象。

4.类的继承关系如图所示。

其中包括两个类:

“雇员类”(Employee)及其子类“员工类”(Staff):

“雇员类”的属性包括:

编号(id),姓名(name);

“员工类”的工资根据每月工作的小时数来计算报酬,因此这个类包括两个属性:

每月工作小时数(hour),每小时工资(wage)。

编程要求:

(1)定义“雇员类”(Employee)及“员工类”(Staff),体现其继承关系。

(2)编写这两个类的get,set方法。

(3)编写这两个类的构造器。

(4)编写Staff类的computePay方法,此方法用来计算此“时薪员工”每月的工资是多少。

(5)编写一个main方法,创建“雇员对象”和“员工对象”,并调用computePay方法。

5.写一个方法,其功能是传入一个数组,返回一个新的没有重复数据的数组。

方法头如下:

publicstaticint[]removeDuplicate(int[]x)

例如:

如果x是{1,3,1,2,3,5},removeDuplicate(x)返回一个新的数组{1,3,2,5}

6.编写一个程序,接受用户从键盘输入的一个正整数,然后统计并输出从1到这个正整数的累加和。

7.编写一个程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。

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

当前位置:首页 > 外语学习 > 其它语言学习

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

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