(2007-2008学年第1学期)
课程号: 30485830 课程名称: JAVA程序设计 任课教师: 张兵、张卫华、李莉
适用专业年级: 学号: 姓名:
考试须知
四川大学学生参加由学校组织或由学校承办的各级,必须严格执行《四川大学考试工作管理办法》和《四川大学考场规则》。有考试违纪作弊行为的,一律按照《四川大学学生考试违纪作弊处罚条例》进行处理。
四川大学各级的监考人员,必须严格执行《四川大学考试工作管理办法》、《四川大学考场规则》和《四川大学监考人员职责》。有违反学校有关规定的,严格按照《四川大学教学事故认定及处理办法》进行处理。 | |||||||
题 号 | 一 | 二 | 三 | 四 | 五 | 六 | 卷面成绩 |
得 分 | |||||||
阅卷教师 | |||||||
阅卷时间 |
1.Applet是一种特殊的Panel,它是Java Applet程序的最外层容器。 (正确)
2.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。( 正确 )
3.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。 ( 错误 )
4.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。 ( 错误 )
5.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。 ( 错误)
6.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。 ( 正确 )
7.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。 ( 正确)
8.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。 ( 正确)
9.静态初始化器是在其所属的类加载内存时由系统自动调用执行。 ( 正确 )
10.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。 (错误)
二、单项选择题(本大题共20小题,每小题1分,共20分 )
1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?( B )
A、 String args B、String ar[] C、Char arg D、StringBuffer args[]
2.以下关于继承的叙述正确的是( A )。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承
3.paint()方法使用哪种类型的参数? ( A )
A、Graphics B、Graphics2D C、String D、Color
4.以下哪个不是Java的原始数据类型( B )
A、int B、Boolean C、float D、char
5.以下哪项可能包含菜单条( B )。
A、Panel B、Frame C、Applet D、Dialog
6.若需要定义一个静态域或静态方法,应使用哪种修饰符?( A )
A、static B、package C、private D、public
7.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行( A )。
A、init() B、start() C、destroy() D、stop()
8.给出下面代码,关于该程序以下哪个说法是正确的?( C )
public class Person{
static int arr[] = new int[5];
public static void main(String a[]) {
System.out.println(arr[0]); }
}
A、编译时将产生错误 B、编译时正确,运行时将产生错误
C、输出零 D、输出空
9.下列哪些语句关于Java内存回收的说明是正确的? ( B )
A、程序员必须创建一个线程来释放内存
B、内存回收程序负责释放无用内存
C、内存回收程序允许程序员直接释放内存
D、内存回收程序可以在指定的时间释放内存对象
10.以下哪个关键字可以用来声明抽象方法?(C )
A、transient B、synchronized C、 abstract D、static
11.以下代码段执行后的输出结果为( A )
int x=-3; int y=-10;
System.out.println(y%x);
A、 -1 B、2 C、1 D、3
12.在Java中,假设我们有一个实现ActionListener接口的类,以下方法中( C )能够为一个Button类注册这个类。
A、addListener() B、addActionListener() C、addButtonListener() D、setListener()
13. 设有下面两个赋值语句:
a = Integer.parseInt(“12”);
b = Integer.valueOf(“12”).intValue();
下述说法正确的是( B )。
A、a是整数类型变量,b是整数类对象。 B、a是整数类对象,b是整数类型变量。
C、a和b都是整数类对象并且值相等。 D、a和b都是整数类型变量并且值相等。
14.FilterOutputStream是BufferedOutputStream、DataOutputStream及PrintStream的父类,以下哪个类可能是FilterOutputStream构造函数的参数类型?B
A、OutputStream B、File C、InputStream D、BufferedOutputStream
15.在编写Java Applet程序时,需在程序的开头写上( A )语句。
A、import javax.swing* ; B、import java.applet.Applet ;
C、import java.io.* ; D、import java.awt.Graphics ;
16.在JAVA中的布局管理器,以下说法中错误的是( C ).
A、FlowLayout以由上到下的方式从左到右排列组件
B、BorderLayout使用 "东"."西"."南"."北居中"来指定组件的位置
C、GridLayout可以创建网格布局,网格布局中各组件的大小可以任意调整
D、可以通过容器的setLayout方法为容器指定布局管理
17.在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。
A、private B、protected C、static D、public
18、在Java中,要想使只有定义该类所在的包内的类可以访问该类,应该用(A)关键字。
A、不需要任何关键字 B、private C、final D、protected
19、关于以下代码段的说法正确的是( C)
① String s="abcde";
② StringBuffer s1=new StringBuffer("abcde");
③ if(s.equals(s1))
④ s1=null;
⑤ if(s1.equals(s))
⑥ s=null;
A、第1行编译错误,String的构造器必须明确调用
B、第3行编译错误,因为s与s1有不同的类型
C、编译成功,但执行时在第5行有异常抛出
D、编译成功,过程中也没有异常抛出
20、编译并运行以下程序,以下描述哪个选项是正确的( A)
① class X{
② protected String toString(){
③ return super.toString();}
④ }
A、编译通过运行无异常 B、编译通过但运行时出错
C、行2出错,不能成功编译 D、不能成功编译,行3出错
三、程序阅读题(本大题共9小题,每小题4分,共36分)
1.阅读以下程序:
class Exp1 {
public static void main(String[] args) {
String s,s1="";
char c;
s=args[0];
for (int i=0;i if(c>='a' && c<='z'){ s1=s1+Character.toUpperCase(c); }else{ s1=s1+Character.toLowerCase(c); } } System.out.println(s1); } } 若在dos命令行输入:java Exp1 cHINA,则输出为: 2.阅读以下程序: import java.io.*; public class AboutFile{ public static void main(String[ ] args){ BufferedReader b=new BufferedReader (new InputStreamReader(System.in)); String s; System.out.flush(); s=b.readLine(); System.out.println(“String is:”+s); } } 运行以上程序,若从键盘输入: javaworld<回车> 则输出结果为: 3.以下程序段的输出结果为: public class C{ public static void main(String args[ ]){ int i , j ; int a[ ] = { 5,1,3,9,7}; for ( i = 0 ; i < a.length-1; i ++ ) { int k = i; for ( j = i ; j < a.length ; j++ )