java期末复习题.doc

上传人:s****u 文档编号:12766830 上传时间:2020-05-23 格式:DOC 页数:10 大小:98.50KB
返回 下载 相关 举报
java期末复习题.doc_第1页
第1页 / 共10页
java期末复习题.doc_第2页
第2页 / 共10页
java期末复习题.doc_第3页
第3页 / 共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 extends 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. class,import,packageB. package,class,importC. package,import,classD. 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. 12B. 12.5 C. 120.5D. “12.5”6. 定义整数数组x: int x=new int25;关于x的描述正确的是 ( D ) A. x24 is undefined. B. x25 is 0C. 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 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. 下列选项中,用于在定义子类时声明继承父类名字的关键字是( 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. String x=null; int y=(x!null)&(x.length()0)?x.length():0;15. 如果需要从文件中读取数据,则可以在程序创建哪一个类的对象( A )A. FileInputStream B. FileOutputStreamC. DataOutputStream D. FileWriter16. paint()方法使用哪种类型的参数? ( A )A. Graphics B. Graphics2D C. String D. Color17. 以下哪项可能包含菜单条(B)。A. PanelB. Frame C. Applet D. Dialog18. 以下代码段执行后的输出结果为( A )int x=3; int y=10;System.out.println(y%x);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. serializeD. static21. 以下有关类的继承的叙述中,正确的是( D )a) 子类能直接继承父类所有的非私有属性,也可以通过接口继承父类的私有属性b) 子类只能继承父类的方法,不能继承父类的属性c) 子类只能继承父类的私有属性,不能继承父类的方法d) 子类不能继承父类的私有属性22. 关于Java语言叙述错误的是( C )a) Java语言具有跨平台性b) Java是一种面向对象编程语言c) Java语言中的类可以多继承d) Java的垃圾收集机制自动回收程序已不知使用的对象23. 线程生命周期中正确的状态是( A )a) 新建、就绪、运行、堵塞和死亡b) 新建、运行和死亡c) 新建、运行、堵塞和死亡d) 就行、运行、堵塞和死亡24. 以下标识符中哪项是不合法的( A )A. static B. $doubleC. helloD. 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. 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 class Short public static void main(String args) StringBuffer s= new StringBuffer(“Hello”); if (s.length() 5) & (s.append(“ there”).equals(“Hello”) ; /do nothing; System.out.println(“value is “ +s); A. The output : value is Hello B. The output : value is Hello there C. A compile error at line 4 or 5 D. No output29. 给出如下程序 public 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”); 运行结果为 C A. nullB. zeroC. someD. 编译失败30. 当浏览器暂时离开含applet 程序的页面时,以下选项中的哪个方法将被执行?( D )Ainit() Bstart() Cdestroy() Dstop()31. 以下关于构造函数的描述错误的是( 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 = 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;A. byte B. short C.double D. int二、写出以下各题的输出结果1.请说出E类中Sysytem.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. 给出如下程序public 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 = Integer.parseInt(s2); System.out.println(x+y);4. 下列程序运行结果_false_true_false_.class TwoObjectspublic static void main(String args) B b1=new B();B b2=new B();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 _.import 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.removeElement(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 UseLabelpublic 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 Caught negative_.class MyException extends Exceptionpublic String toString( )return negative; public class ExceptionDemopublic static void mySqrt(int a) throws MyExceptionif( a0 )throw new MyException();System.out.println(Math.sqrt(a); public static void main( String args )trymySqrt(9);mySqrt(-9 );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(); 三、简答题1. 线程和进程有什么区别?线程是比进程更小的执行单位,一个进程在其执行过程中,可以产生多个线程线程间可以共享进程中的某些内存单元,并利用这些单元来实现交换,实时通信与必要的同步操作但与进程的中断与恢复可以更加节省系统的开销。线程更是运行在进程中的小进程2. Java对标识符命名有什么规定?标识符由字母,下划线,美元符号和数字组成,长度不受限制标识符的第一字符不能是数字字符标识符不能是关键字标识符不能是true,false,null3. String类和StringBuffer类的主要区别是什么?String类创建的字符串对象是不可修改的String字符串不能修改.删除或替换中的某个字符,对象一旦创建不可以再发生变化StringBuffer类能创建可修改的字符串序列StringBuffer对象的实体的内存空间可以自动地改变大小4. 什么叫方法的重载?构造方法可以重载吗?方法重载是:简单说就是同一个方法名,不同的传参,一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同或者是参数的类型不同。构造方法可以重载5. 如何在Java中实现线程?Java线程类也是一个object类,它的实例都继承自java.lang.Thread或其子类。 可以用如下方式用java中创建一个线程:Tread thread = new Thread();执行该线程可以调用该线程的start()方法:thread.start();6. Thread 类中的start() 和 run() 方法有什么区别?start()用来启动线程,真正实现了多线程,这时无需等待run()方法体代码执行完毕而直接继续执行下面的代码:通过调用Thread类的start()方法此线程处于就需状态并没有运行,然后通过此Thread类调用方法run()来完成其运行操作的,这里方法run()称为线程体,她包含了要执行这个线程的内容,run方法运行结束,此线程终止。而cpu再运行其他线程。7. Float型常量和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 = 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 = 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()方法。(2)Dog类是Animal的子类,新增public void swimming()方法,声明狗会游泳。重写public void cry()方法,说明狗的叫声“汪”。(3)Cat类是Animal的子类,新增public void uptree()方法,声明猫可以上树;重写public void cry()方法,说明猫的叫声“喵”。(4)在主类MainClass中分别使用Dog和Cat类创建对象,并调用各自的方法。(5)写出程序的运行结果。class Animal protected String name; public void 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();第 10 页 共 10 页
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!