资源描述
2009——2010学年第一学期《Java程序设计》课程期末考试试卷A
级 专业 学生姓名: 学号:
题号
一
二
三
总分
得分
得分
一、填空题:(每题2分,共40分)
1、面向对象程序设计语言的三种重要特性是( )、( )和( )。
2、所有Java Application程序都必须包含的一个类方法是( )。
3、引用父类中的成员用( );引用当前的类和对象用( )。
4、开发Java应用的过程有三步,它们按顺序依次是( )、( )、( )。
5、设TT()
{
int[] tt=new int[3];
}
则tt的第一个元素的值是( )。
6、给出引用包的两种方法( )和( )。
7、Java源程序文件的后缀为( ),编译后产生的文件称为( )文件。
8、编译Java Applet的命令是( ),运行Java Application的命令是( )。
9、一个Java的类由( )和( )组成。
10、Java共有( )种基本数据类型。
11、方法重载是指( )。
得分
二、单项选择题 (每题2分,共40分)
1、以下哪项都是关键字( )。
A、package private protect throw
B、false final finally float
C、this threadsafe super thread
D、abstract bool break main
2、以下哪些表达式的值是-2,( )。
A、x=8%-3 B、x=-8%3 C、x=8%(-3) D、8%3
3、paint()方法使用( )类型的参数。
A、Graphics B、Graphics2D
C、String D、Color
4、关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是( )。
A、可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B、可以被两种类访问和引用:该类本身、该类的所有子类
C、只能被该类自身所访问和修改
D、只能被同一个包中的类访问
5、下列关于修饰符混用的说法,错误的是( )。
A、 abstract不能与final并列修饰同一个类
B、 abstract类中不可以有private的成员
C、 abstract方法必须在abstract类中
D、staic方法中能处理非static的属性
6、下列程序段的输出是( )。
int n=0,m=1;
if(n>0)
if(m>0)
System.out.println(“m=”+m);
else
System.out.println(“n=”+n);
A、m=1 B、n=0 C、什么都不输出 D、编译错误
7、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )
A、static void method() B、public void method()
C、final void method() D、abstract void method()
8、在数组引用时,以下说法正确的是( )。
A、数组下标可以是整型常量,也可以是整型变量,但不能是表达式
B、数组下标可以是整型变量,也可以是表达式,但不能是整型常量
C、数组下标可以是整型常量,也可以是整型变量或整型变量表达式
D、Java语言对数组元素不进行越界检查。
9、容器Panel和Applet缺省使用的布局编辑策略是( )。
A、BorderLayout B、FlowLayout C、GridLayout D、CardLayout
10、执行完下段代码后c的值是多少?
int a=1, b=2, c=3, d=4;
if( a++<=b | c++<d )
c+=a ;
System.out.println( c ) ;
A、3 B、4 C、5 D、6
11、指出正确的表达式( )
A、 byte=128 B 、Boolean=null
C 、long l=0xfffL D、 double=0.9239d
12、关于以下代码所画图形的说明,正确的是( )。
1. g.setColor (Color.red);
2. g.Drawline(10,10,10,60);
3. g.setColor(Color.red);
4. g.Drawrect(100,100,150,150);
A、 一条40像素长的垂直红线,一个边长为150像素的红色四方形
B、一条40像素长的垂直黑线,一个边长为150像素的红色四方形
C、一条50像素长的垂直黑线,一个边长为150像素的红色四方形
D、 一条50像素长的垂直红线,一个边长为150像素的红色四方形
13、以下选项中循环结构合法的是( )。
A、while (int i<7)
{ i++;
System.out.println(“i is “+i);}
B、 int j=3;
while(j)
{ System.out.println(“ j is “+j);}
C、 int j=0;
for(int k=0; j + k !=10; j++,k++)
{ System.out.println(“ j is “+ j + “k is”+ k);}
D、 int j=0;
do{
System.out.println( “j is “+j++);
if (j = = 3) {continue loop;}
}while (j<10);
14、在Java Applet 程序用户自定义的Applet子类中,一般需要重载父类的( )方法来进行必要的初始化工作。
A、start( ) B、stop( ) C、init( ) D、paint( )
15、对下列代码,如果在命令行运行命令 “java Test Hello World”,会得到什么输出?
public class Test{
public static void main( String[] args ){
System.out.println( args[2] ) ;
}}
A、Test B、Hello C、World D、抛出一个例外
16、Float类在( )中。
A、java.util B、java.io C、java.awt D、java.lang
17、下面的哪行代码可以正确地对文件file.txt创建一个输入流( )
A、InputStream in=new FileReader(“file.txt”);
B、InputStream in=new FileInputStream(“file.txt”);
C、InputStream in=new InputStreamReader (“file.txt”);
D、FileInputStream in=new FileReader(new File(“file.txt”));
18、编译并运行以下程序,以下描述哪个选项是正确的( )
1.Class X{
2. Protected String toString(){
3. Return super.toString();}
4. }
A、编译通过运行无异常 B、编译通过但运行时出错
C、行2出错,不能成功编译 D、不能成功编译,行3出错
19、当以下程序段执行时,
String a="我爱Java!";
System.out.println(a.charAt(a.length()));
输出是( )。
A 、生成一个异常 B、! C、a D、编译出错
20、设
public class MyTest
{
String s;
public static void main(String args[])
{
MyTest m=new MyTest();
m.mymethod();}
void mymethod()
{
System.out.println(s);
}
}
这段程序的输出是( )。
A、编译出错,s没有初始化 B、输出null
C、输出空行 D、什么都不输出
得分
三、给正确的程序写出运行结果,否则给出出错的原因。(每题10分,共20分)
1、程序如下
int x=0,y=4, z=5;
if (x>2){
if (y<5){
System.out.println(“Message one”);
}
else {
System.out.println(“Message two”);
}
}
else if(z>5){
System.out.println(“Message three”);
}
else {
System.out.println(“Message four”);
}
}
2、程序如下
public class Waiter {
int var;
Waiter(double var) {
this.var = (int)var; }
Waiter(int var) {
this("Welcome");
}
Waiter() {
System.out.println("Good-bye");
}
Waiter(String s) {
this();
System.out.println(s);
}
public static void main(String[] args) {
Waiter t = new Waiter(1);
}
}
第 6 页 共 6 页
展开阅读全文