当前位置:文档之家› java期末考试题 ()

java期末考试题 ()

一、选择题(每道题只有一个正确答案,每小题2分,共30分)15道题1、关于Java语言叙述错误的是:( C)A.Java语言具有跨平台性B.Java是一种面向对象的语言C.Java语言中的类可以多继承D.Java的垃圾收集机制自动回收程序已不再使用的对象2、以下叙述正确的是:( B)的确台aA.构造方法必须是public方法B.main方法必须是public方法C.Java应用程序的文件名可以是任意的D.构造方法应该声明为void类型3、关于Java中数据类型叙述正确的是:( B)A、整型数据在不同平台下长度不同B.boolean类型数据只有2个值,true和falseC.数组属于简单数据类型D.Java中的指针类型和C语言的一样4、设 int x=1,float y=2,则表达式 x / y的值是:( D)A.0B.1C.2D.以上都不是5、以下语句有语法错的是:( A)A.int x=1;y=2;z=3B.for (int x=10,y=0;x>0;x++);C.while (x>5);D.for(; ;);6、关于类和对象的叙述正确的是:( A)A.Java的类分为两大部分:系统定义的类和用户自定义的类B.类的静态属性和全局变量的概念完全一样,只是表达形式不同C.类的成员至少有一个属性和一个方法D.类是对象的实例化7、以下有关构造方法的说法,正确的是:( A)A.一个类的构造方法可以有多个B.构造方法在类定义时被调用C.构造方法只能由对象中的其它方法调用D.构造方法可以和类同名,也可以和类名不同8、以下有关类的继承的叙述中,正确的是:( D)A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B.子类只能继承父类的方法,不能继承父类的属性C.子类只能继承父类的非私有属性,不能继承父类的方法D.子类不能继承父类的私有属性9、下列属于容器的组件有:( B)A.JButtonB.JPaneC.CanvasD.JTextArea10、void的含义:( C)A.方法体为空B.定义的方法没有形参C.定义的方法没有返回值D.方法的返回值不能参加算术运算11、关于Java中异常的叙述正确的是:( D)A.异常是程序编写过程中代码的语法错误B.异常是程序编写过程中代码的逻辑错误C.异常出现后程序的运行马上中止D.异常是可以捕获和处理的12、所有的异常类皆继承哪一个类?( C)A.B.C.D.13、下面哪个不是java语言中的关键字?( B)A.longB.sizeofC.instanceofD.const14、为实现进程之间的通信,需要使用下列那种流才合适?(D)A.Data streamB.File streamC.Buffered streamD.Piped stream15、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?(D)A.ActionListenerB.MouseListenerC.MouseMotionListernD.ItemListener二、填空题(每空1分,共20分)1、面向对象程序设计所具有的基本特征是:___抽象性___,_封装性___,_继承性__,_多态性__2、数组x定义如下int x[ ][ ]=new int[3][2]则 x..length的值为____3________,x[0].length的值为_____2_______。

3、Java中实现多线程一般使用两种方法,一是___继承Thread类_________,二是_____实现Runnable方法__________4、Java的图形用户界面设计中,有很多布局管理器用来摆放组件的位置,一般用到的布局管理器有(列出四种即可)__FlowLayout_____,___GridLayout_____,__BorderLayout_____,___CardLayout_______5、Applet常用的方法是:__init()_、__run()__、__stop()__和destroy()。

三、阅读程序,写出程序的输出结果(每题5分,共20分)1、class A{private int privateVar;A(int _privateVar){privateVar=_privateVar;}boolean isEqualTo(A anotherA){if ==return true;elsereturn false;}}public class B{public static void main(String args[]){A a = new A(1);A b = new A(2);}}程序的输出结果为:____false_____2、class A {double f(double x, double y) {return x * y;}}class B extends A {double f(double x, double y) {return x + y;}}public class Test {public static void main(String args[]) {B obj = new B();"The program output is " + (4, 6));}}程序的输出结果为:__ The program output is 10_ 3、public class Unchecked {public static void main(String[] args) {try {method();} catch (Exception e) {"A");} finally {"B");}}static void method() {try {wrench();"C");} catch (ArithmeticException e) { "D");} finally {"E");}"F");}static void wrench() {throw new NullPointerException();}}程序的输出结果为:EAB4、public class Test {public static void main(String[] args) { int x;int a[] = { 0, 0, 0, 0, 0, 0 };calculate(a, a[5]);"the value of a[0] is " + a[0]);"the value is a[5] is " + a[5]);}static int calculate(int x[], int y) {for (int i = 1; i < ; i++)if (y <x[i] = x[i - 1] + 1;return x[0];}}程序的输出结果为:the value of a[0] is 0the value is a[5] is 5一、单选择题(每小题2分,共10分)1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。

A..javaB. .classC..htmlD. .exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。

A. 3B. 3. 5C. 4D. 53、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成一些画图操作。

A. start( )B. stop( )C. init( )D. paint( )4、不允许作为类及类成员的访问控制符的是( )。

A. publicB. privateC. staticD. protected5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。

A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )二、填空题(每空格1分,共20分)1、开发与运行Java程序需要经过的三个主要步骤为、和。

2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是类的子类并且存储该源程序文件的文件名为。

3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生个文件名与类名相同而扩展名为的字节码文件。

4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用字节内存空间,这样,无论是中文字符还是英文字符,都是占用字节内存空间。

5、设x = 2 ,则表达式( x + + )/3 的值是。

6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为和。

7、方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。

方法是不能被当前类的子类重新定义的方法。

8、创建一个名为MyPackage 的包的语句是,该语句应该放在程序的位置为:。

9、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是。

int s = 0 ;for ( int i = 0 ; i < ; i + + )if ( i % 2 = = 1 ) s += MyIntArray[i] ;s );10、在Java程序中,通过类的定义只能实现重继承,但通过接口的定义可以实现重继承关系。

三、写出下列程序完成的功能。

(每小题5分,共20分)1、public class Sum{ public static void main( String args[ ]){ double sum = ;for ( int i = 1 ; i <= 100 ; i + + )sum += (double) i ;"sum="+sum );}}2、import .* ;public class Reverse{ public static void main(String args[ ]){ int i , n =10 ;int a[ ] = new int[10];for ( i = 0 ; i < n ; i ++ )try {BufferedReader br = new BufferedReader(new InputStreamReader);a[i] = ( )); ;public class abc{ public static void main(String args[]){ new FrameOut(); }}class FrameOut extends Frame ;public class abc{ public static void main(String args[]){ SubClass sb = new SubClass( );));}}class SuperClass{ int a = 10 , b = 20 ; }class SubClass extends SuperClass{ int max( ) { return ((a>b)?a:b); } }四、写出下面程序的运行结果(每小题10分,共30分)1、import .*;public class abc{ public static void main(String args[ ]){ AB s = new AB("Hello!","I love JA V A.");));}}class AB {String s1;String s2;AB( String str1 , String str2 ){ s1 = str1; s2 = str2; }public String toString( ){ return s1+s2;}}2、import .* ;public class abc{public static void main(String args[ ]){ int i , s = 0 ;int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 };for ( i = 0 ; i < ; i ++ )if ( a[i]%3 = = 0 ) s += a[i] ;"s="+s);}}3、import .* ;public class abc{public static void main(String args[ ])){ "a="+a+"\nb="+b); }}class SubClass extends SuperClass{ int c;SubClass(int aa,int bb,int cc){ super(aa,bb);c=cc;}}class SubSubClass extends SubClass{ int a;SubSubClass(int aa,int bb,int cc){ super(aa,bb,cc);a=aa+bb+cc;}void show(){ "a="+a+"\nb="+b+"\nc="+c); }}五、使用Java语言编写程序。

相关主题