级夜大本科java复习题.docx

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

级夜大本科java复习题.docx

《级夜大本科java复习题.docx》由会员分享,可在线阅读,更多相关《级夜大本科java复习题.docx(25页珍藏版)》请在冰点文库上搜索。

级夜大本科java复习题.docx

级夜大本科java复习题

一、判断题

1、对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。

(×)

2、类及其属性、方法可以同时有一个以上的修饰符来修饰。

(√)

3、抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。

(×)

4、Final类中的属性和方法都必须被final修饰符修饰。

(×)

5、最终类不能派生子类,最终方法不能被覆盖。

(√)

6、一个Java类可以有多个父类。

(×)

7、一个Java类可以有多个构造函数。

(√)

8、Java类的构造函数可以有返回值。

(×)

9、一个类不能既被声明为abstract的,又被声明为final的。

(√)

10、如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。

(×)

11、一个类如果实现了某个接口,那么它必须重载该接口中的所有方法。

(×)

12、接口中的常量永远是private,public,static,final。

(×)

13、一个抽象类的子类必须要定义从超类中继承过来的所有的抽象方法。

(×)

14、所有的抽象方法都必须存在于抽象类中。

(√)

15、抽象类中不允许包含非抽象的方法。

(×)

16、static方法不能操纵和处理属于某个对象的成员变量,而只能处理属于整个类的成员变量。

(√)

17、子类构造函数总是先显式的或隐式地调用其父类的构造函数,以创建和初始化子类的父类成员。

(√)

18、在类的引用中,子类的对象可以当作其父类的对象对待。

(√)

19、在类的引用中,父类的对象可以当作其子类的对象对待。

(×)

20、如果一个方法的形式参数定义的是父类对象,那么调用这个方法时,可以使用子类对象作为形式参数。

(√)

21、如果父类对象引用指向的实际是一个子类对象,那么父类对象引用可以强制类型转化成子类对象的引用。

(√)

22、如果一个方法的形式参数定义的是子类对象,那么调用这个方法时,可以使用父类对象作为形式参数。

(×)

二、选择题

1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(A)。

A..javaB..classC..htmlD..exe

2、以下(B)不是Java中有效的关键字。

A、constB、NULLC、falseD、this

3下面哪些是Java中合法的标识符(BCD)AcontinueBReturnCD123Dm_int

4编译Java源程序文件产生的字节码文件的扩展名为(A)AjavaBclassChtmlDexe

5下面是在命令行运行Java应用程序A,怎样才能在main(Stringargs[])方法中访问单词"first"?

(B)

javaAthefirstsnowthefirstsnow.Aargs[0]Bargs[1]Cargs[2]Dargs[5]

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

A.publicB.privateC.staticD.protected

7下面哪些不是java的简单数据类型?

(C)A.shortB.BooleanC.DoubleD.float

8为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。

A.staticvoidmethod()B.publicvoidmethod()C.finalvoidmethod()D.abstractvoidmethod()

9下列代码中,将引起一个编译错误的行是(D)。

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

1)publicclassTest{

2)intm,n;

3)publicTest(){}

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

5)publicstaticvoidmain(Stringargs[]){

6)Testt1,t2;

7)intj,k;

8)j=0;k=0;

9)t1=newTest();

10)t2=newTest(j,k);

11)}

12)}

10阅读下列代码后

publicclassPerson{

intarr[]=newint[10];

publicstaticvoidmain(Stringargs[]){

System.out.println(arr[1]);

}

}

正确的说法是___A___。

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

11代码如下:

1.publicclassWhileExm{

2.publicstaticvoidmain(String[]args){

3.intx=1,y=6;

4.while(y--){x--;}

5.system.out.printIn(“x=”+x“y=”+y);

6.}

7.}

结果是什么?

(E)

A.Theoutputisx=6y=0

B.Theoutputisx=7y=0

C.Theoutputisx=6y=-1

D.Theoutputisx=7y=-1

E.编译失败

12代码如下:

1.publicclassFoo{

2.privateintval;

3.publicfoo(intv)(val=v;)}

4.publicstaticvoidmain(String[]args){

5.Fooa=newFoo(10);

6.Foob=newFoo(10);

7.Fooc=a;

8.intd=10;

9.doublee=10.0;

10.}

11.}

下面哪个逻辑表达式为真?

(A)A.(a==c)B.(b==d)C.(a==b)D.(b==c)E.(d==10.0)

13代码如下:

1.inti=1,j=0;

2.switch(i){

3.case2:

4.j+=6;

5.case4:

6.j+=1;

7.case1:

8.j+=2;

9.case0:

10.j+=4;

11.}

最终j的值是什么?

(E)A.0B.1C.2D.4E.6

14char的数值范围是多少?

(B)

A.0...32767B.0...65535C.–256...255D.–32768...32767E.Rangeisplatformdependent.

15下面关于变量及其范围的陈述哪些是对的?

(C)

A.实例变量是类的成员变量。

B.实例变量用关键字static声明。

C.在方法中定义的局部变量在该方法被执行时创建

D.局部变量在使用前必须被初始化。

16有关构造方法,下列叙述正确是?

(D)

A.默认的构造方法初始化方法变量。

B.默认的构造方法初始化了在类中声明的实例变量。

C.假如一个类缺少没有参数的构造方法,但是有其它的构造方法,则编译器生成一个缺省的构造方法。

D.编译器只有当一个类没有其它的构造方法时才生成缺省的构造方法。

17关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(A)

A.可以被三种类所引用:

该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B.可以被两种类访问和引用:

该类本身、该类的所有子类

C.只能被该类自身所访问和修改

D.只能被同一个包中的类访问

18关于被私有保护访问控制符privateprotected修饰的成员变量,以下说法正确的是(B)

A.可以被三种类所引用:

该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B.可以被两种类访问和引用:

该类本身、该类的所有子类

C.只能被该类自身所访问和修改

D.只能被同一个包中的类访问

19关于被私有访问控制符private修饰的成员变量,以下说法正确的是(C)

A.可以被三种类所引用:

该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B.可以被两种类访问和引用:

该类本身、该类的所有子类

C.只能被该类自身所访问和修改

D.只能被同一个包中的类访问

20下述说法中,错误的是(D)

A.Java中,方法的重载是指多个方法可以共享同一个名字

B.Java中,用abstract修饰的类称为抽象类,它不能实例化

C.Java中,接口不包含成员变量和方法实现

D.Java中,构造方法可以有返回值

21下列关于修饰符混用的说法,错误的是(D)

A.abstract不能与final并列修饰同一个类

B.abstract类中不可以有private的成员

C.abstract方法必须在abstract类中

D.staic方法中能处理非static的属性

23哪些声明阻止了方法的overriding?

(A)

A.finalvoidmethoda(){}

B.staticvoidmethoda(){}

C.staticfinalvoidmethoda(){}

D.finalabstractvoidmethoda(){}

24哪个语句创建了一个数组实例?

(A)

A.int[]ia=newint[15];

B.floatfa=newfloat[20];

C.char[]ca=“SomeString”;

D.intia[][]={4,5,6}{1,2,3};

三、简答题

1、说明利用记事本和JDK开发一个Java程序的基本步骤。

答:

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

2、Applet与javaapplication有什么区别?

简述各自的运行机制。

答:

JavaApplet程序是在WWW浏览器环境下运行,即不是完整独立运行程序;

运行JavaApplet程序的解释器不是独立的软件,而是嵌在WWW浏览器中作为浏览器软件的一部分。

JavaApplet程序中不需要有main方法,但是JavaApplet程序的主类必须是类库中已定义好的类Applet或JApplet的子类。

JavaApplet程序可以直接利用浏览器或AppletViewer提供的图形用户界面,而JavaApplication程序则必须另外书写专用代码来营建自己的图形界面。

3、java中的数据类型转换有哪两种?

分别解释其含义和用法。

答:

类型转换有两种:

自动类型转换(或称隐含类型转换)和强制类型转换。

自动类型转换

如果这两种类型是兼容的,Java将执行自动类型转换。

简单的说,当把占用位数较短的数据转化成占用位数较长的数据时,Java执行自动类型转换,不需要在程序中作特别的说明。

Java允许下面的类型转换直接转换(右边=左边),无须显式造型:

Byte→short→int→long→float→double

char→int

反之,必须做强制类型转换,转换形式为:

(数据类型)变量名或表达式

当把占用位数较长的数据转化成占用位数较短的数据时,会出现信息丢失的情况,因而不能够自动转换。

这时就需要利用强制类型转换,执行非兼容类型之间的类型转换。

经过强制类型转换,将得到一个在“()”中声明的数据类型的数据,该数据是从指定变量所包含的数据转换而来的。

值得注意的是,指定变量本身不会发生任何变化。

将占用位数较长的数据转化成占用位数较短的数据时,可能会造成数据超出较短数据类型的取值范围,造成“溢出”

4、如何声明Java类的静态属性?

与普通属性相比,静态属性有什么特点?

答:

被static修饰的属性称为静态属性

静态属性的特点是:

它们是类的属性,而不属于任何一个类的具体对象

换句话说,对于该类的任何一个具体对象而言,静态属性是一个公共的存储单元,任何一个类的对象访问它时,取到的都是相同的数值,同样任何一个类的对象去修改它时,也都是在对同一个内存单元做操作。

5、Java中的访问控制符有哪些?

分别描述其允许的访问控制区域。

答:

public、缺省访问控制符、protected、private、privateprotected

公共访问控制符public:

可以被所有的其它类所访问和引用,这里的访问和引用是指这个类作为整体是可见和可使的,程序的其它部分可以创建这个类的对象、访问这个类内部可见的成员变量和调用它的可见的方法。

缺省访问控制符:

只能被同一个包中的类访问和引用,而不可以被其它包中的类使用这种访问特性又称为包访问性

保护访问控制符protected:

可以被三种类所引用:

该类自身、与它在同一个包中的其他类、在其他包中的该类的子类。

私有访问控制符private:

只能被该类自身所访问和修改,而不能被任何其它类(包括该类的子类)来获取和引用。

私有保护访问控制符privateprotected:

可以被两种类访问和引用:

该类本身、该类的所有子类,不论这些子类是与该类在同一个包里还是处于其它的包中。

 

四、阅读题

1、阅读下面异常处理程序,写出执行结果

publicclassExceptionDemo{

publicstaticvoidmain(String[]args){

ExceptionTestet=newExceptionTest();et.m1();

}

}

classExceptionTest{

inti;

int[]a=newint[5];

voidm1(){

try{

while(true){

m2();

System.out.println();

}

}catch(Exceptione){

System.out.println("m1runs");

}

}

voidm2()throwsException{

try{

System.out.println(10/i);

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

}catch(ArithmeticExceptione){

i=10;

System.out.println("handleArithmeticException");

}

finally{

System.out.println("finally");

}

System.out.println("m2ends");

}

}

答:

执行结果如下

handleArithmeticException.

Finally

m2

1

Finally

m1runs

2、阅读下面程序,写出执行结果

classT{

voidf(intx){

System.out.println("intinT:

"+x);

}

voidf(doublex){

System.out.println("doubleinT:

"+x);

}

voidf(Objectx){

System.out.println("ObjectinT:

"+x);

}

}

classSextendsT{

voidf(intx){

System.out.println("intinS:

"+x);

}

}

publicclassTestOverride{

publicstaticvoidmain(String[]args){

Tt=newS();t.f(20);t.f(20L);

t.f(3.5f);t.f(3.5);t.f("abcdef");

}

}

答:

执行结果如下

intins:

20

doubleinT:

20.0

doubleinT:

3.5

doubleinT:

3.5

objectinT:

abcdef

3阅读下列程序,指出错误之处,说明原因,给出修改后语句

classIamAbstract

{

finalintf;

doubled;

abstractvoidmethod();答:

错误:

没有方法体改正:

voidmethod();

}

4阅读下列程序,指出错误之处,说明原因,给出修改后语句

classparent

{

privateintmine;答:

错误:

private不能被继承改正:

publicintmine;

}

classchildextendsparent

{

intgetMine()

{returnmine;}

}

5阅读下列程序,指出错误之处,说明原因,给出修改后语句

classparent

{

privateintmine;

intgetMine()

{

returnmine;

}

}

classchildextendsparent

{

intmine;

intgetMine()

{returnsuper.getMine;}答:

改正:

{returnsuper.getMine();}

}

6阅读下列程序,指出错误之处,说明原因,给出修改后语句

classAmIWrong

{

intdata1,data2;

AmIWrong()

{data1=-1;}

AmIWrong(intd)

{data2=d;

this();答:

此句放置句首

}

}

7阅读下列程序,指出错误之处,说明原因,给出修改后语句

interfaceMyInterface

{

voidmethod1();

}

abstractclassParentimplementsMyInterface

{

}

classChildextendsParent

{

voidmethod1()答:

改正:

publicvoidmethod1()

{

System.out.println(“Iamimplementednow!

”);

}

}

五、程序题

1补充完整下面方法,可以从三个数a,b,c中找出最大值,作为方法的返回值返回(10分)

intfindMax(inta,intb,intc){

//完整该方法

}

答:

intfindMax(inta,intb,intc){

//完整该方法

intmax=(a

b:

a;

if(max

max=c;

}

returnmax;

}

2数组a中存放了若干整数,补充完整下面的方法,能从屏幕上分别打印出其中最大的整数,最小的整数,以及所有整数的算术平均数(10分)

voidProcessArray(int[]a){

//完整该方法

}

答:

voidProcessArray(int[]a){//完整该方法

intmax=a[0];

intmin=a[0];

intsum=0;

for(inti=0;i

//System.out.println(a[i]);

if(max

max=a[i];

}

if(min>a[i]){

min=a[i];

}

sum=sum+a[i];

}

intavg=sum/a.length;

System.out.println("max="+max+";"+"min="+min+";"+"sum="+sum+";"+"avg="+avg);

//System.out.println("min="+min);

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

//System.out.println("avg="+avg);

}

3编写一个方法判断一个字符串是否为回文,例如“abcba”(10分)

boolisHuiwen(Stringstr){}

答:

booleanisHuiwen(Stringstr){

intlen=str.length();

Stringtemp[];

booleanflag=false;

for(inti=0;i

{

if(temp[i].equals(temp[len-1-i])){

System.out.println("noequals!

!

");

flag=false;

}else{

System.out.println("noequals!

!

");

flag=false;

}

}

returnflag;

}

4根据下面的要求,编程实现复数类ComplexNumber:

1)属性:

m_dRealPart:

实部;m_dImaginPart:

虚部

2)构造方法:

ComplexNumber()以及ComplexNumber(doubler,doublei)

3)方法:

复数相加complexAdd(ComplexNumberc);toString()打印当前复数

进一步,编写一段程序,创建三个复数对象,打印其相加后的结果

答:

publicclassComplexNumber

{

doublem_dRealPart,m_dImaginPart;

publicComplexNumber()

{

this.m_dRealPart=0;

this.m_dImaginPart=0;

}

publicComplexNumber(doubler,doublei){

this.m_dRealPart=r;

this.m_dImaginPart=i;

}

publicdoublegetReal()

{

returnthis.m_dRealPart;

}

publicdoublegetImage()

{

returnthis.m_dImaginPart;

}

publicdoublegetReal(ComplexNumberc)

{

returnc.m_dRealPart;

}

public

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

当前位置:首页 > PPT模板 > 动态背景

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

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