JAVA期末练习题2.docx

上传人:b****5 文档编号:6487949 上传时间:2023-01-07 格式:DOCX 页数:11 大小:20.82KB
下载 相关 举报
JAVA期末练习题2.docx_第1页
第1页 / 共11页
JAVA期末练习题2.docx_第2页
第2页 / 共11页
JAVA期末练习题2.docx_第3页
第3页 / 共11页
JAVA期末练习题2.docx_第4页
第4页 / 共11页
JAVA期末练习题2.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

JAVA期末练习题2.docx

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

JAVA期末练习题2.docx

JAVA期末练习题2

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

1、一个Java源程序可以定义多个类,但其中有且仅有一个类型的类,java源程序经过编译后将生成与其同名的文件,其扩展名是。

2、执行以下程序段后,x=,y=,z=。

intx=4,y=5,z=6;

z+=++x*y――;

3、JavaApplet小应用程序的公共类必须是的子类,小应用程序生命周期中方法只执行一次。

4、假设intpi=123;将pi的值转化为字符串,实现表达式为

5、用修饰的成员变量(即域)一旦被赋值,就不能再被修改。

修饰的超类成员不能被子类继承。

6、类处于java开发环境的类层次的根部,其它所有的类都是直接或间接地继承了此类。

该类定义了一些最基本的状态和行为。

(注意书写完整,即包名加类名)

7、在线程的生命周期中,用start方法启动了一个线程后,线程进入________状态,等待被处理器执行,线程运行结束后,进入状态。

8、Java中的输入/输出流根据处理内容的不同,分为和

两种。

9、AWT的事件处理机制中,可以激活鼠标单击动作的事件类是,实现的监听器接口是。

10、Java为TCP通信协议提供了对象的编程类,这些类放在包中,获取www网络资源可以用类实现。

二、选择题(每小题2分,共40分)

1、在java中,使用Random类,需要在程序中使用import语句导入的包是()

A)java.utilB)java.io

C)java.langD)

2、下面哪个是java语言中的正确的标识符()

A)$数量B) abstract

C) MaxOneD) 1Way

3、下面语句哪个是正确的()

A)intindex=1.2;B)chara=”A”; 

C)doublefiveFourths=5/4;D)booleanretOk=1;

4、以下程序输出的结果是()

publicclassTest{

publicstaticvoidmain(Stringargs[]){

Stringstr="ABCDE";

str.subString(2,5);

StringBuffernewStr=newStringBuffer(str);

newStr.reverse();

System.out.print(newStr);

}

}

A)CDEB)EDCBAC)ABCDED)EDC

5、关于下面的程序哪个说法是正确的?

()

publicclassPerson{

staticintarr[]=newint[5];

publicstaticvoidmain(Stringa[]){

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

}

}

A)编译时将产生错误B)编译时正确,运行时将产生错误

C)输出为空D)输出0

6、面向对象的多态性在Java中主要通过以下哪种机制表现()

A)访问控制B)重载和重写

C)静态域和静态方法D)包

7、设x=2,y=10,则表达式++y+2*3<

A)34B)35

C)64D)68

8、有关类的说法正确的是?

()

A)类具有封装性,所以类的数据是不能被访问的

B)类具有封装性,但可以通过类的公共接口访问类中的数据

C)声明一个类时,必须用public修饰符

D)每个类中,必须有main方法,否则程序无法编译

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

A)staticvoidmethod()B)publicvoidmethod()

C)finalvoidmethod()D)abstractvoidmethod()

10、下述哪个说法是不正确的?

()

A)局部变量在使用之前无需初始化,因为有该变量类型的默认值

B)类成员变量由系统自动进行初始化,也无需初始化

C)参数的作用域就是所在的方法

D)for语句中定义的变量,当for语句执行完时,该变量就消亡了

11、下面这段程序的运行结果是什么?

()

classAclass{

voidgo(){System.out.println(“Aclass”);}

}

publicclassBcladdextendsAclass{

voidgo(){System.out.println(“Bclass”);}

publicstaticvoidmain(String[]args){

Aclassa=newAclass();

Aclassa1=newBclass();

a.go();

a1.go();

}

}

A)AclassB)BclassC)AclassD)Bclass

AclassBclassBclassAclass

12、下列哪些语句关于内存回收的说明是正确的()

A)程序员必须创建一个线程来释放内存

B)内存回收程序负责释放无用内存

C)内存回收程序允许程序员直接释放内存

D)内存回收程序可以在指定的时间释放内存对象

 

13、对于如下代码,有哪些方法可以加入类Child?

()

publicclassParent{

publicintaddValue(inta,intb){

ints;

s=a+b;

returns;

}

}

ClassChildextendsParent{}

A)intaddValue(inta,intb){//dosomething……}

B)publicvoidaddValue(inta,intb){//dosomething…}

C)publicintaddValue(inta){//dosomething}

D)publicintaddValue(inta,intb)throwsMyException{//dosomething…}

14、下面的程序输出结果为()

classBase{

intm;

publicBase(){

this.m=1;

}

}

publicclassTestextendsBase{

publicTest(){

m=m+1;

}

publicstaticvoidmain(Stringargs[]){

Testt=newTest();

System.out.print(t.m);

}

}

A)输出结果为0B)输出结果为1

C)输出结果为2D)编译出错

15、对以下程序

publicclassPoint(){ 

intx,y;

public Point(intx,inty){ 

   ;  

   ;

}

}

下列哪个可放入上面程序的划线部分?

()

A)Point.x =x Point.y =x   B)x=this.x   y=this.y  

C)x=x1   y=y1  D)this.x=y   this.y=x

16、下面哪些说法是正确的?

()

A)在Java中一个类只允许实现一个接口

B)Java语言中的类只能有一个构造函数

C)Java语言会自动对类的成员变量(域)进行初始化

D)Java语言不能实现多重继承

17、构造BufferedOutputStream的合适参数可以是以下哪个类的实例?

A)FileInputStreamB)FileOutputStream

C)FileWriterD)OutputStream

18、对于异常处理语句try…catch…finally,下面哪个说法是正确的?

()

A)如果有多个catch语句,对所有的catch都执行一次

B)如果有多个catch语句,对每个符合条件的catch都执行一次

C)找到合适的异常类型后就不再执行后面的catch

D)finally部分可能不会被执行

19、下列哪个是说法错误的?

()

A)启动线程可调用start方法

报考学校:

______________________报考专业:

______________________姓名:

准考证号:

------------------------------------------------------------------------------------------密封线---------------------------------------------------------------------------------------------------

B)run方法是线程运行的主体

C)线程运行中调用sleep方法可以进入阻塞状态

D)在线程中,优先级为1的线程可以抢占优先级为5的线程的资源

20、下面哪个布局管理器使用的是组件的最佳尺寸,即把每个组件都假定为它的自然(首选)大小()

A) FlowLayout B)CardLayoutC)BorderLayout D)GridLayout

 

三、程序阅读题(每题6分,共30分)

1、写出下列程序代码的运行结果。

publicclassTest{

publicstaticvoidmain(String[]args){

int[]MyIntArray={10,20,30,40,50,60,70};

ints=0;

for(inti=0;i

if(i%2==1){

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

s+=MyIntArray[i];

}

System.out.println(s);

}

}

}

 

2、写出下列程序代码的运行结果。

publicstaticvoidmain(String[]args){

charchars[]={'a','','s','t','r','i','n','g'};

byte[]bytes={72,101,108,108,111,33};

//提示:

A、a和“!

”号的ASCII分别为65、97和33

Strings1=newString();

Strings2=newString("String2");

Strings3=newString(chars);

Strings4=newString(chars,2,5);

StringBuffersb=newStringBuffer(s3);

sb.append(“!

”);

Strings5=newString(sb);

Strings6=newString(bytes);

System.out.println("TheStringNo.1is"+s1);

System.out.println("TheStringNo.2is"+s2);

System.out.println("TheStringNo.3is"+s3);

System.out.println("TheStringNo.4is"+s4);

System.out.println("TheStringNo.5is"+s5);

System.out.println("TheStringNo.6is"+s6);

}

3、写出下列程序代码的运行结果。

publicclassTestextendsTT{

 publicstaticvoidmain(Stringargs[]){

    Testt=newTest("Tom");

 }

 publicTest(Strings){

    super(s);

    System.out.println("Howdoyoudo?

");

 }

 publicTest(){

    this("IamTom");

 }

}

classTT{

  publicTT(){

    System.out.println("Whatapleasure!

");

  }

  publicTT(Strings){

     this();

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

  }

}

 

4、给定下面的代码片段,如果method()方法正常运行并返回,程序运行结果为?

如果method()方法出现数组越界异常,程序运行结果为?

publicvoidTest(){

   try{

      method();

      System.out.println("HelloWorld");

     }

   catch(ArrayIndexOutOfBoundsExceptione)

   {

    System.out.println("Exception?

");

   }

   catch(Exceptione)

   {

    System.out.println("Exception!

");

   }

   finally{

    System.out.println("Thankyou!

");

    }

 }

 

5、仔细阅读下面的程序代码,请写出该程序的功能。

importjava.awt.*;

importjava.awt.event.*;  

publicclass myFrame extendsFrameimplementsActionListener{ 

Labelres;

TextFieldmy;

Stringword[]={"zero","one","two","three","four","five","six","seven","eight","nine","ten"};

public myFrame(){     

  my=newTextField(20);

  res=newLabel("英文单词  ");

  setLayout(newFlowLayout());

  add(my);

add(res);         

  my.addActionListener(this);

}

publicvoidactionPerformed(ActionEvente){

   Strings=my.getText();

   intn=Integer.parseInt(s);  

   res.setText(word[n]);  

 }

publicstaticvoidmain(Stringargs[]){

  Frame my=newmyFrame();

  my.setSize(300,300);

  my.setVisible(true);

 }

}

 

四、程序填空题(每空2分,共20分)

1、阅读下面的程序代码,根据注释要求补充、完成划线

(1)~(5)代码。

//声明一个接口,接口名为Area

interfaceArea{

(1)//定义一个符号常量pi表示圆周率

publicdoubleCalsulateArea();

}

classMyCircleimplementsArea{

doubler;

publicMyCircle(doubler){

_____

(2)___//将参数r的值赋值给成员变量r

}

publicdoubleCalsulateArea(){

___(3)__//返回圆的面积,使用前面定义的符号常量pi

}

}

classTestArea{

publicstaticvoidmain(String[]args){

//创建MyCircle的对象,对象名为c,圆的半径为5

_____(4)__________

System.out.println("圆的面积为:

"+(5));

//计算c的面积并输出

}

2、创建一个名为Rectangle的类来表示矩形.根据注释要求补充、完成划线(6)~(10)代码。

classRectangle{

intwidth,height;

Rectangle(intwidth,intheight){

(6)//由构造方法来确定矩形的宽度和高度

(7)

}

intgetArea(){//getArea()方法用于计算矩形的面积

(8)

}

                                

intgetPerimeter(){//getArea()方法用于计算矩形的周长

(9)

}

voiddrawRect(){//使用星号(*)作为描绘字符画出矩形的形状;

for(inti=0;i

for((10))

System.out.print("*");                

System.out.println();

}

}

}

注:

如果一个矩形对象的宽度为5,高度为3,则调用drawRect()方法,应显示如下图案:

*****

*****

*****

五、编程题(共3小题,第1题10分,第2题15分,第3题15分,共40分)

1、设计一个TestPalindrome类,定义一个静态方法isPalindrome(Stringstr):

判断一个字符串是否是回文,要求该方法的返回值为逻辑型数据。

注:

回文是指正向读和反向读都一样的字符串序列,如“32123” 或“ablewasIereIeresawelba”都是回文字符串。

(10分)

 

2、定义一个Reserve类,通过其main方法实现下述功能:

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

(15分)

3、设计一个学生类Student。

(15分)

Student类的结构要求如下:

1)成员变量(域)包括id(学号)、name(姓名),age(年龄),sex(性别)和degree(学位);

2)定义一个无参数的构造方法:

要求自动生成一个合法的8位随机数作为学生的学号,学号格式为年级号(4位,取值范围[2006,2009])+班号(2位,取值范围[1,20])+学号(2位,取值范围[1,50]);

3)定义一个带参数的构造方法:

利用给定的参数对学生的学号和姓名属性进行初始化;

4)编写Show方法显示一个学生的相关属性信息;

5)要求由Student类派生出本科生类Undergraduate,增加新的成员变量specialty(专业);

6)为Undergraduate子类定义一个无参数的构造方法,自动生成一个合法的8位随机数为本科生的学号。

注:

学号格式与student类要求相同。

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

当前位置:首页 > 高等教育 > 工学

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

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