"景先生毕设|www.jxszl.com

java期末试题及答案

2023-09-12 15:40编辑: www.jxszl.com景先生毕设

 

 Java程序设计   》课程试题

 

课程号:

 

考试

A

闭卷

考查

B

开卷

 

题    号

总分

阅卷教师

各题分数

40

20

10

5

5

20

 

 

 

 

100

 

实得分数

 

 

 

 

 

 

 

 

 

 

 

 

 

 

一、单项选择题(20题;每题2分,共40分)

1若数组a定义为int[][]a=new int[3][4],则a___。

A)一维数组 B)二维数组 C)三维数组 D)四维数组

答案:B            难度系数C  知识点: 数组

2下面语句中,____不会出现编译警告或错误。

Afloat f=1.3; Bchar c=”a”; Cbyte b=25; Dboolean b=null;

答案:C (难度系数B)知识点:赋值相容

3下列叙述正确的是___。

Afinal类可以有子类  Babstract类中只可以有 abstract方法

Cabstract类上可以有非abstract方法,但该方法不可以用final修饰

D)不可以同时用finalabstract修饰一个方法

答案:D (难度系数B 知识点:抽象类,抽象方法

4创建一个标识有关闭按钮的语句是___。

A   TextField  b = new  TextField(“关闭”);

B Label  b = new  Label(“关闭”);

C   Checkbox  b = new  Checkbox(“关闭”);

          D  Button   b = new  Button(“关闭”);

答案:D  (难度系数C 知识点:GUI编程

5、在Java中,关键字_____使类不能派生出子类。

A final       Bpublic        Cvolatile      Dnative

答案:A   (难度系数A , 知识点:继承)

 

6Character流与Byte流的区别是_____

A) 每次读入的字节数不同 

B) 前者带有缓冲后者没有 

C) 前者是块读写,后者是字节读写 

D) 二者没有区别,可以互换使用 

(难度系数B)答案:C 知识点:文件IO

 

7、下列语句正确的是________

Aint a={1,2,3}           Bint b=(1,2,3);

Cint c[]={1,2,3}          Dint []d={1 2 3}

答案:C  (难度系数C)知识点:数组

8、下面___函数是public void  aMethod(){...}的重载函数

A void  aMethod( ){...}

B public int  aMethod(){...}

C public void  aMethod ( ){...}

Dpublic int  aMethod ( int m){...}

  答案 D   (难度系数A,知识点:重载)

 

9_________事件监听器可以处理在文本框中输入回车键的事件

AItemListener             BActionListener

CMotionListener           DAdjustListener

答案:B  (难度系数B)知识点:事件处理

10下列陈述正确的是_________ 

A 一个组件只能发生一种事件   B)一个监听器处理一种事件

C)多个事件监听器被注册到一个组件会引起编译错误

D 如果多个事件监听器被注册到一个组件上,这些事件监听器一般都会起作用,但各个事件的处理顺序不确定

答案:D    (难度系数A)知识点:事件处理

11以下描述正确的是___。
A JAVA不可以用来开发手机程序
B JAVA程序中java.awt包是唯一自动引入的类库
C java.io包是JAVA语言的输入输出类库
D JAVA的包中可以有相同的类名 

答案:C  (难度系数B 知识点:JAVA简介,包

12以下关于数组的描述有误的是____。
A 整型数组中的各元素的值必须是整型
B 数组是有序数据的集合
C 如数组名为ab,ab.length可以取得该数组的长度
D 数组的下标从1开始

答案:D    (难度系数B)知识点:数组

13关于被私有访问控制符private修饰的成员变量,以下说法正确的是___。
A)可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B)可以被两种类访问和引用:该类本身、该类的所有子类
C)只能被该类自身所访问和修改
D)只能被同一个包中的类访问

答案:C (难度系数B)知识点:类的继承

 

14Applet程序的自定义的Applet子类中,在Applet的界面中显示文字、图形和其他界面元素,常常重载的方法是    

Astart( )  Bstop( )    Cpaint( )  Dinit( )

答案C  (难度系数 C     知识点:绘图,图形界面)

15、在 Java 中,用 package 语句说明一个包时,该包的层次结构必须_____

A)与文件的结构相同 B)与文件目录的层次相同

C)与文件类型相同 D)与文件大小相同

(难度系数C)答案:B;知识点:java特性。

16、在读字符文件 Employee.dat 时,使用该文件作为参数的类是_____

ABufferedReader BDataInputStream

CDataOutputStream DFileInputStream

答案:A(难度系数:B;知识点:文件IO)

17、在 Java 中,能实现多重继承效果的方式是_____

A)内部类 B)适配器

C)接口 D)同步

答案:C(难度系数:B;知识点:java特性。)

18关于被私有访问控制符private修饰的成员变量,以下说法正确的是___。
A)可以被三种类所引用:该类自身、与它在同一个包中的其他类、

在其他包中的该类的子类
B)可以被两种类访问和引用:该类本身、该类的所有子类
C)只能被该类自身所访问和修改
D)只能被同一个包中的类访问

答案:C   (难度B 知识点:类的继承

19下列各类中有一个是其它类的超类,它是    

AFont      BFrame      Cobject    DObject

答案D   (难度系数 C   知识点:常见类,)

20int  public 成员变量 MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是____

Apublic int MAX_LENGTH=100

Bfinal int MAX_LENGTH=100

Cpublic const int MAX_LENGTH=100

Dpublic final int MAX_LENGTH=100

答案:D难度系数:C;知识点:语法基础

 

二、填空题(10题;每题2分,共20分)

1、表达式1/2*3的结果是____。

答案:0  (难度系数 B)知识点:表达式

2 定义一个包含7个元素的数组a,则该数组的最后一个元素是          

答案:a[6](难度系数C  知识点:数组

3在Java中只能实现单继承(Java不支持多重继承),但可通过         实现多重继承。

答案:接口 (难度系数 B  知识点:接口)

4  Applet的生命周期是有init()、start()、stop()、destroy()这4个方法构成的,在程序执行过程中,        方法只被调用执行一次,但 start()方法可以多次被调用执行。

答案:init( )   (难度系数B  知识点:小应用程序

5构造一个包的是使用关键字            来指定该文件代码中属于该包。

(难度系数C)答案:package知识点:语法基础。

6Java程序运行时,系统自动通过System类创建三个静态的I/O对象,它们是标准输入流对象                、标准输出流对象              、和标准错误流对象              

(难度系数C)答案:InputStreamOutputStreamErrorStream;知识点:文件IO

7、x = 2 ,则表达式 ( x + + ) * 3 的值是     

答案:  6     (难度系数:B  知识点:运算符与表达式)

 

8、字符串分为两大类,一类是字符串常量,使用               类的对象表示;另一类是字符串变量,使用                 类的对象表示。

答案:StringStringBuffer(难度:B;知识点:变量类型。)

 

9 构造方法只能通过         运算符调用,用户不能直接调用。

(难度系数 B)答案:new   知识点:构造方法

10线程同步执行过程中,wait()方法与        方法是匹配使用,否则易造成死锁。

(难度系数 A)答案:notify 知识点:线程同步

 

三、判断题(10题;每题1分,共10分)

1.  由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。 

答案:错            难度系数:   C        知识点:类继承

 

2 注释的作用是使程序在执行时在屏幕上显示//之后的内容。     

答案:错            难度系数:   C        知识点:函数注释

 

3(  )java.lang.System类中的inout属性是表示标准输入和标准输出。

答案:对    (难度系数B)知识点:数据流

 

4 Java的各种数据类型所占用的内存长度与具体软硬件环境有关。     

答案:错        (难度系数:  C         知识点: JAVA特点)

5.( )JAVA语言对内存的释放是采用垃圾自动回收机制。JAVA虚拟机自动判断并收集垃圾,但一般不立即释放它们的存储空间。

(难度系数B)答案:对  知识点:内存回收

6.( )JAVA源程序的文件名必须与公共类的类名相同。

(难度系数C)答案:对  知识点:JAVA简介

 

7  )访问类的成员,必须以类的对象为前缀。

答案    (难度系数 C  知识点:类的封装,访问)

 

8.( Java源程序编写好之后,以文件的形式保存在硬盘或U盘上,源文件的名字可以随便取的,它不一定与程序的主类名一致。

答案:错  (难度系数B)知识点:JAVA简介

 

9 )一个包就相当于操作系统的文件夹,包中的类就相当于文件。

答案:对;难度:C;知识点:java特性。

 

10 Java 源文件中最多只能有一个private类,其他类的个数不限。

答案:错;难度:C;知识点:编程基础。

 

 

四、程序填空题(1题;每题5分,共5分)

1.以下程序的功能是将文件a.txt复制到b.txt,在空白处填入适当的内容。

import java.io.*;

public class C {

    public static void main(String[] args) throws IOException {

File  inputFile =  1)    ;

        File  outputFile = new File(" b.txt");

        FileReader  in = new FileReader(inputFile);

        FileWriter  out = new  2)    ;

        int c;

        while (   3)   )   out.write(c);

        in.close();

        out.close();    }

}

(难度系数:B    知识点:JAVA输入输出)

答案:(1new File("a.txt")

2)FileWriter(outputFile)

3)(c = in.read() ) != -1

 

 

五、读程序写结果(1题;每题5分,共5分)

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

import    java.io.*;

public    class   ATest{

   public   static   void   main(String args[]) {

  Sub   sb = new   Sub( );        

      System.out.println(sb.method1( ));      }

}

class    Super{

  int  x=1 , y=2 ;  

  int  method1(){ return  x<y?x:y;  }

}

class  Sub  extends  Super{

  int  mothod1( ) {  return   ((x>y)?x:y);  }  

}

程序运行结果是:                  

 

答案:1      (难度系数:  B         知识点:类继承、多态性)

六、编程题(2题;每题10分,共20分)

 

1编写程序求出10个整数的最大值和最小值、平均值。

(难度系数B,基本程序设计)

答案:

public class computer

{

int a[8]={6,10,3,17,20,19,5,27230};

int i,sum=0,max=0,min=0,avg=0;

for(i=0;i<=7;i++)

{

sum=sum+a[i];

if(max<a[i]) max=a[i];

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

}

avg=sum/8;

System.out.println(最大值=+max);

System.out.println(最小值=+min);

System.out.println(平均值=+avg);

}

2编写一个程序,在控制台窗口中提示输入两个整数,然后接收这两个 整数,并输出它们的和。下面是运行过程的示例:

请输入第一个整数:45

请输入第二个整数:23

计算结果:45+23=68

上面的两个黑斜体整数是用键盘输入的,其余字符是程序输出的。

(难度系数 B) 

 import java.io.*;

 

public class Add

{

public static void main(String[] args){

DataInputStream in = new DataInputStream(new BufferedInputStream(System.in));

    String s;

    String a,b;

    String s1="Please input integer ";

    int i=0;

    a="0";

    b="0";

    System.out.print(s1+" a:");

    try {

      while((s = in.readLine()).length() != 0)

      {

        i=i+1;

        if(i==1) { a=s;System.out.print(s1+" b:");}

        if(i==2) { b=s;break;}

      }

      int c=Integer.parseInt(a)+Integer.parseInt(b);

      System.out.print("The result of a+b:"+String.valueOf(c));   

    }

    catch(Exception e)

    {

      e.printStackTrace();

    }

 }

}

知识点:数据流

 

 


原文链接:http://www.jxszl.com/biancheng/JAVA/446483.html