收藏 分享(赏)

java期末复习题 (1).doc

上传人:精品资料 文档编号:10701928 上传时间:2019-12-29 格式:DOC 页数:10 大小:98.50KB
下载 相关 举报
java期末复习题 (1).doc_第1页
第1页 / 共10页
java期末复习题 (1).doc_第2页
第2页 / 共10页
java期末复习题 (1).doc_第3页
第3页 / 共10页
java期末复习题 (1).doc_第4页
第4页 / 共10页
java期末复习题 (1).doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、第 1 页 共 10 页一、单项选择题1. 关于继承以下陈述正确的是 ( D )A. “X extends Y“ is correct if and only if X is a class and Y is an interface.B. “X extends Y“ is correct if and only if X is an interface and Y is a class.C. “X extends Y“ is correct for all combinations of X and Y being classes and/or interfaces. D. “X exten

2、ds Y“ is correct if X and Y are either both classes or both interfaces.2. 运行第一行和第二行代码后,x、a、b 的值正确的是 ( C ) 1. int x, a=6,b=7;2. x=a+ + b+;A. x=15,a=7,b=8 B. x=15,a=6,b=7C. x=13,a=7,b=8 D. x=13,a=6,b=7 3. 表达式(13+3*4)/4%3 的值是 ( A )A. 0 B. 25 C. 2 D. 14. 在 JAVA程序中 import、class 和 package的正确出现顺序是 ( C ) A.

3、 class,import,package B. package,class,importC. package,import,class D. import,package,class5. 某一程序的 main方法中有如下语句,则输出的结果是 ( B ) string s1=“0.5”,s2=“12”;double x = Double.parseDouble(s1);int y = Integer.parseInt(s2);System.out.println(x+y);A. 12 B. 12.5 C. 120.5 D. “12.5”6. 定义整数数组 x:int x=new int25;关

4、于 x的描述正确的是 ( D )A. x24 is undefined. B. x25 is 0第 2 页 共 10 页C. x0 is null D. x.length is 25 7. 下列不属于面向对象编程的三个特征的是(B )A.封装 B.指针操作 C.多态性 D.继承8. JDBC 中要显式地关闭连接的命令是(A )A. Connection.close() B. RecordSet.close()C. Connecton.stop() D. Connection.release()9. 下列数组定义及赋值,错误的是(B)A. int intArray;B. intArray=new

5、 int3;intArray1=1;intArray2=2;intArray3=3;C. int a=1,2,3,4,5;D. int a=new int2;a0=new int3;a1=new int3;10. 分析选项中关于 Java中 this关键字的说法正确的是( A)A. this关键字是在对象内部指代自身的引用B. this关键字可以在类中的任何位置使用C. this关键字和类关联,而不是和特定的对象关联D 同一个类的不同对象共用一个 this11. 线程调用了 sleep( )方法后,该线程将进入( C )状态A. 运行状态 B. 阻塞状态C. 休眠状态 D. 终止状态12. 下

6、列选项中,用于在定义子类时声明继承父类名字的关键字是( C )A. Interface B. Package C. extends D. Class13. 以下语句有语法错误的是( A )A. int x=1; y=2; z=3 B. for (int x=10,y=0;x0;x+);C. while(x5); D. for(;);14. 以下哪个表达式是不合法的(C )A. String x = “hello”; int y=9; x+=y;B. String x = “hello”; int y=9; if(x=y)C. String x= “hello”;int y=9; x=x+y;D

7、. String x=null; int y=(x!null)A. -1 B. 2 C. 1 D. 319. Java application中的主类需包含 main方法,以下哪项是 main方法的正确形参?( B )A. String args B. String ar C. Char arg D. StringBuffer args20. 以下哪个关键字可以用来对对象加互斥锁?( B ) A. transient B. synchronized C. serialize D. static21. 以下有关类的继承的叙述中,正确的是( D )a) 子类能直接继承父类所有的非私有属性,也可以通

8、过接口继承父类的私有属性b) 子类只能继承父类的方法,不能继承父类的属性c) 子类只能继承父类的私有属性,不能继承父类的方法d) 子类不能继承父类的私有属性22. 关于 Java语言叙述错误的是( C )a) Java语言具有跨平台性b) Java是一种面向对象编程语言c) Java语言中的类可以多继承d) Java的垃圾收集机制自动回收程序已不知使用的对象23. 线程生命周期中正确的状态是( A )a) 新建、就绪、运行、堵塞和死亡b) 新建、运行和死亡c) 新建、运行、堵塞和死亡d) 就行、运行、堵塞和死亡第 4 页 共 10 页24. 以下标识符中哪项是不合法的( A )A. stati

9、c B. $double C. hello D. BigMeaninglessName25. 下列方法中可以用来创建一个新线程的是( C )a) 实现 java.lang.Runnable接口并重写 start()方法b) 继承 java.lang.Runnable接口并重写 run()方法c) 继承 java.lang.Thread类并重写 run()方法d) 实现 java.lang.Thread类并实现 start()方法26. 以下哪项是接口的正确定义?( B )A. interface B void print() ; B. interface B void print(); C.

10、abstract interface B extends A1,A2 /A1、A2 为已定义的接口 abstract void print() ; D. abstract interface B void print() ; 27. 有以下程序片段,下列哪个选项不能插入到行 1。 ( D )1.2.public class Interesting3./do sth 4. A. import java.awt.*;B. package mypackage;C. class OtherClass D. public class MyClass 28. 下面程序的运行结果是 A public cla

11、ss Short public static void main(String args) StringBuffer s= new StringBuffer(“Hello”);if (s.length() 5) /do nothing;System.out.println(“value is “ +s); A. The output : value is Hello第 5 页 共 10 页B. The output : value is Hello thereC. A compile error at line 4 or 5D. No output29. 给出如下程序public static

12、 void main (String args)String str = “null”;if (str = null)System.out.println(“null”);else if(str.length() = 0)System.out.printIn(“zero”);elseSystem.out.println(“some”);运行结果为 C A. null B. zero C. some D. 编译失败30. 当浏览器暂时离开含 applet 程序的页面时,以下选项中的哪个方法将被执行?( D )Ainit() Bstart() Cdestroy() Dstop()31. 以下关于构

13、造函数的描述错误的是( B ) 。A. 构造函数是类的一种特殊函数,它的方法名必须与类名相同。B. 构造函数的返回类型必须是 void型。C. 构造函数的主要作用是完成对类的对象的初始化工作。D. 一般在创建新对象时,系统会自动调用构造函数。32. 为 AB类的一个无形式参数无返回值的方法 method书写方法头,使得使用类名 AB作为前缀就可以调用它,该方法头的形式为( C )。A. final void method( ) B. public void method( ) C. static void method( ) D. abstract void method( )33. 设 x

14、= 1 , y = 2 , z = 3,则表达式 yz/x 的值是( C )。A. 3 B. 3.5 C. 1 D. 5 34. 以下哪个关键字可以用来为对象加互斥锁?( D ) A transient B. static C. serialize D. synchronized35. 有以下方法的定义,请选择该方法的返回类型( C ) 。ReturnType method(byte x, double y) return (short)x/y*2;第 6 页 共 10 页A. byte B. short C. double D. int二、写出以下各题的输出结果1. 请说出 E类中 Sysy

15、tem.out.println的输出结果为_15.0_8_。interface Adouble f(doublex,double y);class B implements Apublic double f(double x,double y)return x*y;int g(int a,int b)return a+b;public class Epublic static void main(String args)A a=new B();System.out.println(a.f(3,5);B b=(B)a;System.out.println(b.g(3,5);2. 给出如下程序pu

16、blic static void main (String args)String str = “null”;if (str = null)System.out.println(“null”);else if(str.length() = 0)System.out.printIn(“zero”);elseSystem.out.println(“some”);运行结果为 _some _ 3. 某一程序的 main方法中有如下语句,则输出的结果是 _12.5_string s1=“0.5”,s2=“12”;double x = Double.parseDouble(s1);int y = Inte

17、ger.parseInt(s2);System.out.println(x+y);4. 下列程序运行结果_false_true_false_.class TwoObjects public static void main(String args) B b1=new B();B b2=new B();第 7 页 共 10 页System.out.println(b1=b2);System.out.println(b1!=b2);System.out.println(b1.equals(b2);class B int x;B( ) x=1;5. 下列程序运行结果 v0 v1 1 v1 1 _.i

18、mport java.util.*;public class VecApp public static void main(String args) Vector v = new Vector();for(int i = 0; i 2; i+)v.addElement(“v“+i);v.insertElementAt(new Integer(1),2);Enumeration e = v.elements();while(e.hasMoreElements()System.out.print(e.nextElement()+“ “);System.out.println();v.removeE

19、lement(“v0“ );for(int i = 0; i v.size() ; i+)System.out.print(v.elementAt(i) +“ “);System.out.println(); 6. 下列程序运行结果_2 4 6 8_.import java.io.*;public class UseLabel public static void main(String args) Loop: for(int i=2; i10; i+) if( i%2!=0) continue Loop; System.out.print(i+“ “); 7. 下列程序运行结果_ _3.0

20、Caught negative_.class MyException extends Exceptionpublic String toString( ) return “negative“; public class ExceptionDemopublic static void mySqrt(int a) throws MyException if( a0 ) throw new MyException();System.out.println(Math.sqrt(a); public static void main( String args )try mySqrt(9); mySqrt

21、(-9 ); 第 8 页 共 10 页catch( MyException e ) System.out.println(“Caught “+e); 8. 下列程序运行结果_ in First _ in Second _class First First() System.out.println (“in First“); public class Second extends First Second() System.out.println(“in Second“); public static void main(String args) Second mine= new Second(

22、); 三、简答题1. 线程和进程有什么区别?线程是比进程更小的执行单位,一个进程在其执行过程中,可以产生多个线程线程间可以共享进程中的某些内存单元,并利用这些单元来实现交换,实时通信与必要的同步操作但与进程的中断与恢复可以更加节省系统的开销。线程更是运行在进程中的小进程2. Java 对标识符命名有什么规定?标识符由字母,下划线,美元符号和数字组成,长度不受限制标识符的第一字符不能是数字字符标识符不能是关键字标识符不能是 true,false,null3. String 类和 StringBuffer 类的主要区别是什么?String 类创建的字符串对象是不可修改的String 字符串不能修改

23、.删除或替换中的某个字符,对象一旦创建不可以再发生变化StringBuffer 类能创建可修改的字符串序列StringBuffer 对象的实体的内存空间可以自动地改变大小4. 什么叫方法的重载?构造方法可以重载吗?方法重载是:简单说就是同一个方法名,不同的传参,一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同或者是参数的类型不同。构造方法可以重载5. 如何在 Java中实现线程?Java 线程类也是一个 object 类,它的实例都继承自 java.lang.Thread 或其子类。 可以用如下方式用 java 中创建一个线程:Tread thread =

24、 new Thread();执行该线程可以调用该线程的 start()方法:thread.start();6. Thread 类中的 start() 和 run() 方法有什么区别?start()用来启动线程,真正实现了多线程,这时无需等待 run()方法体代码执行完毕而直接继续执行下面的代码:通过调用 Thread 类的 start()方法此线程处于就需状态并没有运行,然后通过此 Thread 类调用方法 run()来完成其运行操作的,这里方法 run()称为线第 9 页 共 10 页程体,她包含了要执行这个线程的内容,run 方法运行结束,此线程终止。而 cpu 再运行其他线程。7. Fl

25、oat 型常量和 double 型常量在表示和用法上有什么区别?double 为双精度,占 8 个字节,是 64 位的浮点数 float 为单精度,内存中占 4 个字节,是32 位的浮点数 .double 取值范围和精度比 float 要高变量定义上有些不同,比如:floath a = 2.3f; double a = 2.3;float 类型值后面有一个 f;四、编程题1. 判断 101 到 200 之间有多少个素数,并输出所有素数。2. public class sushu 3. public static void main(String args) 4. z: for (int o =

26、 101; o 200; o+) 5. for (int p = 2; p o / 2; p+) 6. if (o % p = 0)7. continue z;8. 9. System.out.println(o);10. 2. 一个数如果恰好等于他的因子之和,这个数就称为“完数” 。 (因子就是所有可以整除这个数的数,不包括这个数自身. 比如 6 的因子是 1,2,3) ,编写一个应用程序求 1000 之内的所有完数。11. public class wanshu 12. public static void main(String args) 13. int i, j;14. for (i

27、 = 1; i = 1000; i+) 15. int sum;16. sum = 0;17. for (j = 1; j i; j+) 18. if (i % j = 0) 19. sum += j;20. 21. 22. if (i = sum)23. System.out.println(“ “ + i);24. 编写程序模拟猫和狗。程序中有 4个类:Animal、Dog、Cat 和主类 MainClass类。要求如下:(1) Animal类有权限是 protected的 String型成员变量 name,以及 public void cry()、public void showName

28、()方法。(2)Dog 类是 Animal的子类,新增 public void swimming()方法,声明狗会游泳。重写 public void cry()方法,说明狗的叫声“汪” 。(3)Cat 类是 Animal的子类,新增 public void uptree()方法,声明猫可以上树;重写 public void cry()方法,说明猫的叫声“喵” 。第 10 页 共 10 页(4)在主类 MainClass中分别使用 Dog和 Cat类创建对象,并调用各自的方法。(5)写出程序的运行结果。class Animal protected String name;public void

29、showName() System.out.println(name);public void cry() System.out.println(“不同动物的叫声是有区别的“);class Dog extends Animal Dog(String s) name = s;public void cry() System.out.println(“汪汪汪“);public void swimming() System.out.println(“加速划水 ing“); class Cat extends Animal Cat() name = “猫“; Cat(String s) name = s; public void cry() System.out.println(“喵喵喵“);public void climbUpTree() System.out.println(name+“会爬树“);public class Xc_01 public static void main(String args) Dog dog = new Dog(“小黄狗“); Cat cat = new Cat(“小花猫“);dog.showName();dog.cry();dog.swimming();cat.showName();cat.cry();cat.climbUpTree();

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报