java期末考试样卷答案_第1页
java期末考试样卷答案_第2页
java期末考试样卷答案_第3页
java期末考试样卷答案_第4页
java期末考试样卷答案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上习 题一、选择题1. 如下哪个字符串是Java中的合法标识符?( A ) A、fieldname B、super C、3number D、#number2. Java中main()函数的返回值是什么类型? ( D )A、String B、int C、char D、void 3. 下列哪些语句关于Java内存回收的说明是正确的? ( C )A、程序员必须创建一个线程来释放内存B、内存回收程序允许程序员直接释放内存C、内存回收程序负责释放无用内存D、内存回收程序可以在指定的时间释放内存对象4. 以下关于继承的叙述正确的是( B )。A、在Java中一个类只能实现一个接口B

2、、在Java中类只允许单一继承C、在Java中一个类不能同时继承一个类和实现一个接口D、在Java中接口只允许单一继承5. Java Applet中的paint()方法使用哪种类型的参数? ( A )A、Graphics B、Graphics2D C、String D、Color6. 在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。A、privateB、protectedC、private protectedD、public7. 下面( B )函数是public void example( ).的重载函数?A、public void example( ).B、pu

3、blic void example( int m ).C、public void example2( ).D、public int example ( ).8. 在浏览器中执行applet 程序,以下选项中的( A )方法将被最先执行。A、init()B、start() C、destroy() D、stop()9. 有程序片段如下,以下表示式的结果为true的是( B )。Float s=new Float(0.1f);Float t=new Float(0.1f);Double u=new Double(0.1);A、s= =tB、s.equals(t)C、u.equals(s)D、t.eq

4、uals(u)10. 关于异常的含义,下列描述中最正确的一个是( C )。A 程序编译错误 B 程序语法错误C 程序运行时的错误 D 程序编译和运行时发生的错误11. 类 Panel 默认的布局管理器是( B )。 A、BorderLayout B、FlowLayoutC、GridLayout D、CardLayout12. 下面哪个方法与applet的显示无关? ( B )A、update() B、draw() C、repaint() D、paint()13. 已知如下代码:public class Testpublic static void main ( String arg ) lon

5、g a = new long10;System.out.println ( a6 );请问哪个语句是正确的? ( B )A 程序输出 null B 程序输出 0 C 因为long数组声明不正确,程序不能被编译D 程序被编译,但在运行时将抛出一个ArrayIndexOutOfBoundsException异常14. Java语言不是( B )A、高级语言 B、编译型语言C、结构化设计语言 D、面向对象设计语言 15. 关于以下程序段的说明正确的是 ( C )public class ArrayTest public static void main(String args) try int x=

6、new int-5; System.out.println("此行将无法被执行!"); catch(NegativeArraySizeException e) System.out.println("exception: 数组下标不能为负数。"); A、编译通过,输出: 此行将无法被执行! B、编译通过,输出: 此行将无法被执行! exception: 数组下标不能为负数。 C、编译通过,输出: exception: 数组下标不能为负数。 D、编译不能通过16. Java源文件和编译后的文件扩展名分别为( B )。A、.class和 .java B、 .

7、java和 .classC、.class和 .class D、 .java和 .java17. 以下有关构造函数的说法,正确的是:(A )。A、一个类的构造函数可以有多个B、构造函数在类定义时被调用C、构造函数只能由对象中的其它方法调用D、构造函数可以和类同名,也可以和类名不同18. 为类Employee中的一个无形式参数且无返回值的方法method书写方法头,以便使用类名Employee作为前缀就可以调用它(即可以通过类名调用方法method),该方法头的形式为(    A  )。A、static  void  

8、method( )         B、public  void  method( )   C、final  void  method( )          D、abstract  void  method( )19. 下列代码的执行结果是: (    C  )。public

9、class Test5 public static void main(String args) String s1=new String("hello"); String s2=new String("hello"); System.out.print(s1=s2); System.out.print(","); System.out.println(s1.equals(s2); A、true,false B、true,true C、false,true D、false,false.20. 下列不是Java关键字的是( 

10、  D  )。 A、 final B、 finally C、null D、sizeof21. 以下(  C    )是java.io包中的一个兼有输入输出功能的类。 A、Object B、Serializable C、RandomaccessFile D、java.io中不存在这样的类22. 下面哪个语句正确地声明一个整型的二维数组? (  D    )A int a = new int; B int a100100 = new int; C int a = new int100100

11、;D int a = new int100100;23. 编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(    B  )。A .java B.classC .html D .exe24. 为读取的内容进行处理后再输出,需要使用下列哪种流? (  D    ) A Filestream B Pipestream C Randomstream D Filterstream25. 下列方法中可以用来创建一个新线程的是。(    C 

12、0;)A 实现java.lang.Runnable 接口并重写 start()方法 B 实现java.lang.Runnable 接口并重写 run()方法 C 继承java.lang.Thread 类并重写 run()方法 D 实现java.lang.Thread 类并实现 start()方法26. 给出如下初始化语句 String s1=new String(“Hello”); String s2=new String(“there”); String s3=new String(); 以下哪种操作是合法的? (   A   )A s3=s1+s2;

13、 B s3=s1-s2; C s3=s1&s2; D s3=s1&&s2;27. 容器Panel和Applet缺省使用的布局编辑策略是(   B   )A BorderLayout B FlowLayoutC GridLayout D CardLayout28. 给出如下代码:class Testprivate int m;public static void fun() / some code.如何使成员变量m 被函数fun()直接访问? (   C   )A将private int m

14、改为protected int mB将private int m 改为 public int mC将private int m 改为 static int mD将private int m 改为 int m29. 以下有关类的继承的说明中正确的是:(   D   )A子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B子类只能继承父类的方法,不能继承父类的属性C子类只能继承父类的非私有属性,不能继承父类的方法D子类不能继承父类的私有属性30. 以下语句有语法错的是:(   A   )A  

15、int x=1;y=2;z=3 B for (int x=10,y=0;x>0;x+);C  while (x>5); D for(; ;);二、简答题1、 请说明this,super,final各自的作用。this:指代调用方法的当前对象;在构造函数内使用this用于指代另外一个构造函数。super:提供了一种调用父类构造函数的方法。final:使得某个变量值只能被引用,而不能修改。2、 试解释方法重构(方法覆盖)和方法重载的区分。方法的覆盖出现在父类与子类之间,并且方法的特征要完全相同。方法的重载可以出现在一个类中,也可以分别出现在父类与子类中,方法的特征一定不完全相

16、同。3、 请解释面向对象程序设计相关的几个概念:继承、 多态、 重载。继承:将相关类组成层次结构,允许新类从已存在的类中派生,通过保留它们的属性(即实例变量)和方法,并根据自己的要求添加新的属性的方法。多态:接口的多种不同的实现方式。重载:在一个类定义中,可编写几个同名的方法,但是只要它们的签名参数列表不同,Java就会将它们看做唯一方法。4、 请说明抽象类和接口的异同点。抽象类:一种类,它不能实例化为一个对象,而只表示一种抽象的概念,继承它的子类可以对其进行具体实现,这种类中往往包含了抽象方法。接口:就是一系列常量和空方法的集合,它提供了多个类共有的方法,但不限制每个类如何实现这些方法。相同

17、点:二者都包含空方法,都必须在实现接口或继承抽象类的子类中具体实现这些方法。由于二者都包含空方法,所以不能用new关键字来创建这两种类型的对象。类之间具有继承关系,接口之间也可以具有这种关系,一个接口可以继承一个或多个接口。接口和类一样可以具有public属性。在interface前加上public关键字,表示各个包中的类均可以实现这个接口,反之,只有同一个包中的类才可以实现这个接口。不同点:抽象类在定义空方法时,其名称前必须加abstract关键字,而在接口中不需要。在抽象类中,除空方法外,还可以定义实例变量和非空方法;而在接口中,只能定义常量和空方法。接口允许多继承。一个接口可以继承多个接

18、口,实现接口的类也可以同时实现多个接口,只要在这个类中对每个接口的方法都有具体的实现,但Java的类仅支持单继承。5、 实例变量与局部变量的区别 实例变量:也叫对象变量,在类中定义的没加static 的变量,与类变量不同,类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果,而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象。局部变量:在方法中定义的只在特定的方法中可以访问的变量。区别:局部变量定义在方法里面,实例变量定义在类以内方法之外;局部变量只能在定义他的方法里面使用,直接调用变量名就行,实例变量至少可以在整个类内使用,使用时必须用对象去调用;局部变量使

19、用之前必须初始化,实例变量不需要赋初值,系统会给默认的初值;局部变量在同一个方法里面不能重名,局部变量和实例变量可以重名,在方法里面采用就近原则,以局部变量为准;实例变量属于对象,它描述了对象的属性,随着对象的存在而存在,局部变量是随着方法的调用而存在,一旦方法调用结束,局部变量也就消亡了。三、阅读程序1. 以下程序段的输出结果为 5 6 7 8 9 。public class TestArray public static void main(String args ) int i , j ;int a = 5,9,6,8,7; for ( i = 0 ; i < a.length-1

20、; i + ) int k = i; for ( j = i ; j < a.length ; j+ ) if ( aj<ak ) k = j; int temp =ai; ai = ak; ak = temp; for ( i =0 ; i<a.length; i+ ) System.out.print(ai+" "); System.out.println( ); 2. 编程填空(将横线上所缺的内容补充完整)下列程序中(Assign.java),指定变量b=50为字节类型,变量f=0.55F为单精度实型,变量k=0xfffL为64位整型,并将该三个变量

21、打印输出,请将程序补充完整。(每空1分)import java.io.*;public _ Assignpublic static void main(String args)_b=50;_f=0.55F;_k=0xfffL;System.out.println("b="+b);System.out.println("f="_);System.out.println("k="+k);3. 写出以下程序的运行结果 no Exception;finally;catch;finally 。public class TryCatchFinal

22、lystatic void Proc( int sel )try if( sel=0 ) System.out.println("no Exception "); return; else if( sel=1 ) int i=0; int j=4/i; catch( ArithmeticException e ) System.out.println("Catch "); catch( Exception e ) System.out.println("Will not be executed");finallySystem.out.

23、println("finally"); public static void main( String args )Proc( 0 ); Proc( 1 ); 4. 阅读以下程序,写出输出结果 Dog 程序方法不能被继承。class Animal Animal( ) System.out.print ("Animal "); public class Dog extends Animal Dog( ) System.out.print ("Dog "); public static void main(String args)Dog snoppy= new Dog( ); 5. 阅读以下程序:class Exp1 public static void main(String args) String s,s1=""char c;s=args0;for (int i=0;i<s.length();i+)c=s.charAt(i);if(c>='a' && c<='z')

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论