1、2011-2012 学年第二学期本科试卷 课程名称: Java 语言程序设计(A)第 1 页 (共 8 页)学 院: 专 业:学号: 姓名: 装订线 学院一、单选题(共 40 分,每题 2 分)1若在某一个类中定义如下的方法: public final void aFinalMethod( );则该方法属于( ) 。A.本地方法 B.静态方法 C.最终方法 D.抽象方法2Java 中字符采用哪种类型编码( )。P19AASCII BIOS-8559-1 CUnicode DUTF-83字符流与字节流的主要区别是( )。A每次读写的字节数不同 B前者带有缓冲,后者没有C前者是块读写,后者是字节读
2、写 D二者没有区别,可以互换使用4下面的哪个赋值语句是不对的?( )(应该这样写:float f=11.1f 因为系统默认数据类型为 double 型)Afloat f = 11.1; Bdouble d = 5.3E12;Cdouble d = 3.14159; Ddouble d = 3.14D;5Java 中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( ) 。A. 隐藏 B.覆盖 C. 重载 D. Java 不支持此特性6下面哪个修饰符修饰的变量是被同一个类的所有对象共享?( )Apublic Bpriv
3、ate Cstatic Dfinal7为了在子类的构造方法中调用父类的相应构造方法,需要在方法体中所执行的第一个语句处写一特殊语句,该语句使用 Java 关键字 () 。Athis Bsuper Cextends Dfinal8以下哪一项不是 File 类的功能: ( )A. 创建文件 B. 创建目录 C. 删除文件 D. 拷贝文件 题号 一 二 三 总成绩得分得分年级:09101 专业:计算机科学技术 课程号: 1002740206第 2 页 (共 8 页)9下列关于构造方法的叙述中,错误的是( )AJava 语言规定构造方法名与类名必须相同BJava 语言规定构造方法没有返回值,但不用 v
4、oid 声明CJava 语言规定构造方法不可以重载DJava 语言规定构造方法只能通过 new 自动调用10. 假设 Foo 类有如下定义,设 f 是 Foo 类的一个实例,下面哪个是错误的?( )public class Fooint i;static String s;void imethod() static void smethod() A. Foo.imethod(); B. f.imethod();C. System.out.println(f.i); D. Foo.smethod()11. 下列说法不正确的是( )。 A. IOException 必须被捕获或声明 B. java
5、 语言会自动初始化成员变量的值 C. java 语言不允许同时继承一个类并实现一个接口 D. java 语言会自动回收内存中的垃圾 12. 在以下诸选项中,不合乎语法规则的是( ) 。A. 类成员(包括类的实例变量和成员方法)均属于该类的作用域B. 在类的作用域内,类成员可被同类中的所有方法进行访问C. 在类的作用域内,类成员可直接通过名字引用D. 在类的作用域外,类成员亦可直接通过名字引用13. .如果希望所有的控件在界面上均匀排列,应使用下列哪种布局管理器( ) A. BoxLayout B. GridLayout C. BorderLayout D. FlowLayout14以下哪个接口
6、的定义是正确的?( )A. interface A void print() ;B. abstract interface A void print() ;C. abstract interface A extends I1, I2 / I1、I2 为已定义的接口 abstract void print() ;2011-2012 学年第二学期本科试卷 课程名称: Java 语言程序设计(A)第 3 页 (共 8 页)学 院: 专 业:学号: 姓名: 装订线 学院D. interface A void print();15当对方法中产生的异常不进行捕获时,应该如何处理?( )。A声明异常 B捕获
7、异常 C抛出异常 D嵌套异常16JFrame 默认的布局管理器是( B )。 AFlowLayout BBorderLayout CGridLayout DCardLayout17Java 语言具有许多优点和特点,下列选项中,哪个反映了 Java 程序并行机制的特点( ) 。 A. 安全性 B. 多线程 C. 跨平台 D. 可移植 18.设有如下的变量定义语句:String s1=new String(“Java”); String s2=new String(“Java”);以下诸选项中,返回值为 false 的是( ) 。A ”Java”.equals(s1) Bs1.equals(“Ja
8、va”) Cs1.equals(s2) Ds1=s219. 在异常处理中,如释放资源、关闭文件、关闭数据库连接等操作一般在( )来完成。 Atry 子句 Bcatch 子句 Cfinally 子句 Dthrow 子句20.下列关于接口和抽象类的说法不正确的是?( )A. 接口也有构造方法B. 实现接口时,需对接口中的所有方法都要实现C. 抽象类也有构造方法D. 抽象类可以派生出子类 二、程序分析题(共 40 分)(说明:一条横线未必只写一条语句,根据情况而定。)1. (8分)阅读下面程序代码,写出程序运行的输出结果。class TestExceptionpublic static void m
9、ain(String args)callMethod();System.out.println(b);得分年级:09101 专业:计算机科学技术 课程号: 1002740206第 4 页 (共 8 页)static void createException()throw new ArrayIndexOutOfBoundsException();static void callMethod()trycreateException();System.out.print(c);catch(ArrayIndexOutOfBoundsException e)System.out.print(d);fin
10、ally System.out.print(e); System.out.print(f);程序运行结果为_。2. (8分) 定义包含一个公共抽象方法printMsg()的抽象类 AbstractTest;然后定义此抽象类的一个子类DefaultTest,包括成员变量有姓名、学号、分数,且此类中包含一个构造方法。请在横线上补充完整语句。abstract class AbstractTest_/定义AbstractTest子类DefaultTest String name;String id;int score;/接收三个参数的构造方法_/实现抽象方法,输出学生的姓名与成绩(格式为“姓名:XXX
11、;成绩:XXX” )_2011-2012 学年第二学期本科试卷 课程名称: Java 语言程序设计(A)第 5 页 (共 8 页)学 院: 专 业:学号: 姓名: 装订线 学院_3.(8分)设在某个java事件处理程序中包含JButton、JTextField以及JComboBox组件对象,它们均可产生ActionEvent事件,并注册同一个ActionEventHandler动作事件监听器。下面是ActionEventHandler监听器定义,请根据要求补充完整程序。class ActionEventHandler implements ActionListenerpublic void a
12、ctionPerformed(ActionEvent e)Object obj=_;/获取事件源/判断具体是哪个组件产生的ActionEventif(_)/动作事件处理1 elseif(_)/动作事件处理2elesif(_)/动作事件处理34.(9分)写出下列程序运行结果。class Personpublic Person()System.out.println(“Hi! “);public Person(String s)this();System.out.println(“I am “+s);public class Who extends Personpublic Who()this(“
13、I am Tony“);public Who(String s)super(s);System.out.println(“How do you do?“);年级:09101 专业:计算机科学技术 课程号: 1002740206第 6 页 (共 8 页)public static void main(String args)Who w = new Who(“Tom“);运行结果为:_5.(7分) 仔细阅读下面的程序代码,请将划线上的语句补充完整。import javax.swing.*;import java.awt.*;import java.awt.event.*;public class
14、FrameExit extends JFrame implements_ public FrameExit(String str)super(str);public void windowClosing(WindowEvent e ) _/退出系统public void windowClosed(WindowEvent e) public void windowOpened(WindowEvent e) public void windowIconified(WindowEvent e) public void windowDeiconified(WindowEvent e) public v
15、oid windowActivated(WindowEvent e) public void windowDeactivated(WindowEvent e) public static void main(String args)FrameExit fr = new FrameExit(“Hello !“);_ /注册窗口事件监听器。fr.setSize(400,300);_/设置窗体可见三、编程题(共 20 分)1. (10 分)根据以下的设计要求编写类。(1)类名: Student(2)成员变量(访问权限均为 private):1) name(String) /姓名 2)age(int)
16、 /年龄(3)方法:(访问权限为 public)得分2011-2012 学年第二学期本科试卷 课程名称: Java 语言程序设计(A)第 7 页 (共 8 页)学 院: 专 业:学号: 姓名: 装订线 学院1) 构造方法:没有参数,设置姓名为“无名氏” ,年龄为 20;2) setName:有一个名为 name 的 String 型参数,将成员变量的 name 的值设为这个新值;3) getName:没有参数,返回姓名;4) setAge:有一个名为 age 的 int 型参数,将成员变量 age 的值设为这个新值;5) getAge:没有参数,返回年龄;年级:09101 专业:计算机科学技术 课程号: 1002740206第 8 页 (共 8 页)2. (10 分)请使用 File、FileReader 、FileWriter 、BufferedReader 和BufferedWriter 类,编写一个 java 应用程序实现文件的复制。要求:(1)文件名自定义;(2)程序可能抛出 FileNotFoundException、IOException,需进行处理;(3)所要求的类必须都使用。