Java技术:Java期末综合练习题
一、选择题。
1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( )。
A、java B、class C、html D、exe
2.main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )?
A、public static void main( )
B、public static void main( String args[] )
C、public static int main(String [] arg )
D、public void main(String arg[] )
3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A、static void method( ) B、public void method( )
C、final void method( ) D、abstract void method( )
4.下列哪个是合法的Java标识符?( )
1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( )。
A、java B、class C、html D、exe
2.main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )?
A、public static void main( )
B、public static void main( String args[] )
C、public static int main(String [] arg )
D、public void main(String arg[] )
3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A、static void method( ) B、public void method( )
C、final void method( ) D、abstract void method( )
4.下列哪个是合法的Java标识符?( )
A、Tree&Glasses B、FirstJavaApplet
C、_$theLastOne D、273.5
5.Java Application源程序的主类是指包含有( )方法的类。
A、main方法 B、toString方法
C、init方法 D、actionPerfromed方法
6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( )个比特位。
A、8 B、16 C、32 D、64
7.设 a = 8,则表达式 a >>> 2 的值是( )。
A、1 B、2 C、3 D、4
8.若a的值为3时,下列程序段被执行后,c的值是多少?( )
c = 1;
if ( a>0 ) if ( a>3 ) c = 2; else c = 3; else c = 4;
A、1 B、2 C、3 D、4
9.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( )语句。
C、_$theLastOne D、273.5
5.Java Application源程序的主类是指包含有( )方法的类。
A、main方法 B、toString方法
C、init方法 D、actionPerfromed方法
6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( )个比特位。
A、8 B、16 C、32 D、64
7.设 a = 8,则表达式 a >>> 2 的值是( )。
A、1 B、2 C、3 D、4
8.若a的值为3时,下列程序段被执行后,c的值是多少?( )
c = 1;
if ( a>0 ) if ( a>3 ) c = 2; else c = 3; else c = 4;
A、1 B、2 C、3 D、4
9.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( )语句。
A、import java.awt.* ; B、import java.applet.Applet ;
C、import java.io.* ; D、import java.awt.Graphics ;
10.对于构造函数,下列叙述正确的是( )。
A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
B、构造函数的返回类型只能是void型。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
11.下面的是关于类及其修饰符的一些描述,正确的是:( )。
A、abstract类只能用来派生子类,不能用来创建abstract类的对象。
B、final类不但可以用来派生子类,也可以用来创建final类的对象。
C、abstract不能与final同时修饰一个类。
D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。
12.若需要定义一个类域或类方法,应使用哪种修饰符?( )
A、static B、package C、private D、public
13.若在某一个类定义中定义有如下的方法: abstract void performDial( );该方法属于( )
C、import java.io.* ; D、import java.awt.Graphics ;
10.对于构造函数,下列叙述正确的是( )。
A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
B、构造函数的返回类型只能是void型。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
11.下面的是关于类及其修饰符的一些描述,正确的是:( )。
A、abstract类只能用来派生子类,不能用来创建abstract类的对象。
B、final类不但可以用来派生子类,也可以用来创建final类的对象。
C、abstract不能与final同时修饰一个类。
D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。
12.若需要定义一个类域或类方法,应使用哪种修饰符?( )
A、static B、package C、private D、public
13.若在某一个类定义中定义有如下的方法: abstract void performDial( );该方法属于( )
。
A、本地方法 B、最终方法 C、解态方法 D、抽象方法
14.下列关于静态初始化器的叙述中,哪一个是正确的?( )
A、静态初始化器是在构造函数之前加上static修饰符。
B、静态初始化器是对类自身进行初始化。
C、静态初始化器在同一个类中只能有一个。
D、静态初始化器是在其所属的类加载内存时由系统自动调用执行。
15.不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的?( )
A、实例方法可以直接调用父类的实例方法。
B、实例方法可以直接调用父类的类方法。
C、实例方法可以直接调用其他类的实例方法。
D、实例方法可以直接调用本类的类方法。
16.设有下面两个类的定义:
class Person { class Student extends Person {
A、本地方法 B、最终方法 C、解态方法 D、抽象方法
14.下列关于静态初始化器的叙述中,哪一个是正确的?( )
A、静态初始化器是在构造函数之前加上static修饰符。
B、静态初始化器是对类自身进行初始化。
C、静态初始化器在同一个类中只能有一个。
D、静态初始化器是在其所属的类加载内存时由系统自动调用执行。
15.不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的?( )
A、实例方法可以直接调用父类的实例方法。
B、实例方法可以直接调用父类的类方法。
C、实例方法可以直接调用其他类的实例方法。
D、实例方法可以直接调用本类的类方法。
16.设有下面两个类的定义:
class Person { class Student extends Person {
long id; // 身份证号 int score; // 入学总分
String name; // 姓名 int getScore(){
} return score;
}
}
问:类Person和类Student的关系是( )。
A、包含关系 B、继承关系
C、关联关系 D、无关系,上述类定义有语法错误
17. 设有下面的两个类定义:
class AA {
void Show(){ System.out.println("我喜欢Java!");
}
class BB extends AA {
void Show(){ System.out.println("我喜欢C++!");
}
String name; // 姓名 int getScore(){
} return score;
}
}
问:类Person和类Student的关系是( )。
A、包含关系 B、继承关系
C、关联关系 D、无关系,上述类定义有语法错误
17. 设有下面的两个类定义:
class AA {
void Show(){ System.out.println("我喜欢Java!");
}
class BB extends AA {
void Show(){ System.out.println("我喜欢C++!");
}
则顺序执行如下语句后输出结果为:( )
AA a; BB b;
a.Show(); b.Show();
A、我喜欢Java! B、我喜欢C++!
我喜欢C++! 我喜欢Java!
C、我喜欢Java! D、我喜欢C++!
我喜欢Java! 我喜欢C++!
18.设有下面的一个类定义:
class AA {
static void Show( ){ System.out.println("我喜欢Java!"); }
}
class BB { void Show( ){ System.out.println("我喜欢C++!"); } }
若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:( )
A、a.Show( ) B、AA.Show( );
b.Show( ) BB.Show( );
AA a; BB b;
a.Show(); b.Show();
A、我喜欢Java! B、我喜欢C++!
我喜欢C++! 我喜欢Java!
C、我喜欢Java! D、我喜欢C++!
我喜欢Java! 我喜欢C++!
18.设有下面的一个类定义:
class AA {
static void Show( ){ System.out.println("我喜欢Java!"); }
}
class BB { void Show( ){ System.out.println("我喜欢C++!"); } }
若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:( )
A、a.Show( ) B、AA.Show( );
b.Show( ) BB.Show( );
C、AA.Show( ); D、a.Show( );
b.Show( ); BB.Show( );
19.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为( )。
A、隐藏 B、覆盖 C、重载 D、Java不支持此特性
20.对于构造函数,下列叙述正确的是( )。
A、构造函数也允许重载。
B、子类无条件地继承父类的无参构造函数。
C、子类不允许调用父类的构造函数。
D、在同一个类中定义的重载构造函数可以相互调用。
21.在使用interface声明一个接口时,只可以使用( )修饰符修饰该接口。
A、private B、protected
C、private protected D、public
22.设有下面两个赋值语句:
a = Integer.parseInt("1024");
b.Show( ); BB.Show( );
19.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为( )。
A、隐藏 B、覆盖 C、重载 D、Java不支持此特性
20.对于构造函数,下列叙述正确的是( )。
A、构造函数也允许重载。
B、子类无条件地继承父类的无参构造函数。
C、子类不允许调用父类的构造函数。
D、在同一个类中定义的重载构造函数可以相互调用。
21.在使用interface声明一个接口时,只可以使用( )修饰符修饰该接口。
A、private B、protected
C、private protected D、public
22.设有下面两个赋值语句:
a = Integer.parseInt("1024");
b = Integer.valueOf("1024").intValue();
下述说法正确的是( )。
A、a是整数类型变量,b是整数类对象。
B、a是整数类对象,b是整数类型变量。
C、a和b都是整数类对象并且它们的值相等。
D、a和b都是整数类型变量并且它们的值相等。
23.在Java Applet程序用户自定义的Applet子类中,常常重载( )方法在Applet的界面中显示文字、图形和其它界面元素。
A、start( ) B、stop( )
C、init( ) D、paint( )
24.下面的语句的作用是:( )。
Vector MyVector = new Vector(100,50);
A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。
B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。
C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空
下述说法正确的是( )。
A、a是整数类型变量,b是整数类对象。
B、a是整数类对象,b是整数类型变量。
C、a和b都是整数类对象并且它们的值相等。
D、a和b都是整数类型变量并且它们的值相等。
23.在Java Applet程序用户自定义的Applet子类中,常常重载( )方法在Applet的界面中显示文字、图形和其它界面元素。
A、start( ) B、stop( )
C、init( ) D、paint( )
24.下面的语句的作用是:( )。
Vector MyVector = new Vector(100,50);
A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。
B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。
C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空
间单位递增。
D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
25.在Java中,存放字符串常量的对象属于( )类对象。
A、Character B、String
C、StringBuffer D、Vector
26.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是( )包。
A、java.io B、java.awt
C、java.applet D、java.awt.event
27.在Java图形用户界面编程中,若显示一些不需要修改的文本信息,一般是使用( )类的对象来实现。
A、Label B、Button
C、TextArea D、TextField
28.创建一个标识有"关闭"按钮的语句是( )。
D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
25.在Java中,存放字符串常量的对象属于( )类对象。
A、Character B、String
C、StringBuffer D、Vector
26.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是( )包。
A、java.io B、java.awt
C、java.applet D、java.awt.event
27.在Java图形用户界面编程中,若显示一些不需要修改的文本信息,一般是使用( )类的对象来实现。
A、Label B、Button
C、TextArea D、TextField
28.创建一个标识有"关闭"按钮的语句是( )。
A、TextField b = new TextField("关闭");
B、Label b = new Label("关闭");
C、Checkbox b = new Checkbox("关闭");
D、Button b = new Button("关闭");
29.在编写异常处理的Java程序中,每个catch语句块都应该与( )语句块对应,使得用该语句块来启动Java的异常处理机制。
A、if - else B、switch C、try D、throw
30.在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( )语句。
A、import java.awt.* ; B、import java.applet.* ;
C、import java.io.* ; D、import java.awt.event.* ;
31.对于子类的构造函数说明,下列叙述中不正确的是( )。
A、子类无条件地继承父类的无参构造函数。
B、子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。
B、Label b = new Label("关闭");
C、Checkbox b = new Checkbox("关闭");
D、Button b = new Button("关闭");
29.在编写异常处理的Java程序中,每个catch语句块都应该与( )语句块对应,使得用该语句块来启动Java的异常处理机制。
A、if - else B、switch C、try D、throw
30.在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( )语句。
A、import java.awt.* ; B、import java.applet.* ;
C、import java.io.* ; D、import java.awt.event.* ;
31.对于子类的构造函数说明,下列叙述中不正确的是( )。
A、子类无条件地继承父类的无参构造函数。
B、子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。
Cc和java先学哪个、在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。
D、子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。
D、子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。
32.Java语言是( )。
A.面向问题的解释型高级编程语言
B.面向机器的低级编程语言
C.面向过程的编译型高级编程语言
D.面向对象的解释型高级编程语言
33.下列的变量定义中,错误的是( )。
A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$;
34.以下的变量定义语句中,合法的是( )。
A) float $_*5= 3.4F; B) byte b1= 15678;
C) double a =Double. MAX_VALUE;
D) int _abc_ = 3721L;
35. 以下字符常量中不合法的是( )。
A) '|' B) '\'' C) "\n" D) '我'
36.下列程序段执行后t5的结果是( )。
int t1 = 9, t2 = 11, t3=8;
int t4,t5;
t4 = t1 > t2 ? t1 : t2+ t1;
t5 = t4 > t3 ? t4 : t3;
A) 8 B) 20 C) 11 D) 9
37.设 a, b, c, d 均为 int 型的变量,并已赋值,下列表达式的结果属于非逻辑值的
是( )。
A) a!=b & c%d < a B) a++ = =a+b+c+d
C) ++a*b--+d D) a+b>=c+d
38.以下由do-while语句构成的循环执行的次数是( )。
int k = 0;
do { ++k; }while ( k < 1 );
A) 一次也不执行 B) 执行1次 C) 无限次 D) 有语法错,不能执行
39.下列语句序列执行后,k的值是( )。
int j=8, k=15;
for( int i=2; i!=j; i++ )
{ j-=2; k++; }
A) 18 B)15 C)16 D) 17
40.下列语句序列执行后,j 的值是( )。
int j=3, i=2;
while( --i!=i/j )
j=j+2;
A)2 B) 4 C)6 D) 5
41.下列语句序列执行后,k 的值是( )。
int x=6, y=10, k=5;
switch( x%y )
{ case 0: k=x*y;
case 6: k=x/y;
case 12: k=x-y;
default: k=x*y-x;
}
A) 60 B) 54 C) 0 D) 5
42.下列语句序列执行后,a的值是( )。
int a=13;
a%=a/5;
A) 3 B) 13 C) 1 D) 169
43. 既能作为类的修饰符, 也能作为类成员的修饰符的是( )。
A) public B) extends C) Float D) static
44.下列选项中,用于定义接口的关键字是( )。
A)import B) implements C) interface D) protected
45.下列类头定义中,错误的是( )。
A) class x
{ .... }
B) public x extends y
{ .... }
C) public class x extends y
{ .... }
D) class x extends y implements y1
{ .... }
46.下列选项中,用于在定义类头时声明父类名的关键字是( )。
A)return B) interface C) extends D) class
47.设 i,j 为类 x 中定义的 double 型变量名,下列 x 类的构造函数中不正确的是( )。
A) double x(double k ){ i=k; return i; }
B) x(double m, double n ){ i=m; j=n; }
C) x( ){i=0;j=0 }
D) x(double k ){ i=k; }
48.下列方法定义中,不正确的是( )。
A) public int x( ){ ... }
B) public static int x( double y ){ ... }
C) void x( double d ) { ... }
D) public static x( double a ){ ... }
49.能从循环语句的循环体中跳出的语句是( )。
A) for 语句 B) break 语句 C) while 语句 D) continue语句
50. 若有循环:
int x=5,y=20;
do{
y-=x;
x++;
}while(++x<--y);则循环体将被执行( )。
A.0次 B.1次 C.2次 D.3次
51. 定义类头时,不可能用到的关键字是( )。
A) private B)class C)extends D)implements
52.在一个应用程序中有如下定义:int a[]={1,2,3,4,5,6,7,8,9,10};,为了打印输出数组a的最后一个元素,下面正确的代码是( )。
A) System.out.println(a[10]);
B) System.out.println(a[9]);
C) System.out.println(a[a.length]);
D) System.out.println(a(8));
53.若一个类中对某个方法进行了重载,能够区分这些重载方法的手段是 ( )。
A) 它们的返回值类型的不同 B) 它们的名称的不同
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论