java期末复习题(解答)
- 格式:doc
- 大小:123.50 KB
- 文档页数:13
《JAVA语言程序设计》期末考试试题及答案4(应考必备题库)一、单项选择题1、下列程序段执行后的成果是( )。
String s =new String("abcdefg");for (int i=0; i<s.length(); i+=2){ System.out.print(s.charAt(i));}A) aceg B) ACEG C) abcdefgD) abcd 二、单项选择题1、下列程序段执行后的成果是( )。
String s= new String("abcdefg");for (inti=0; i<s.length();i+=2){ System.out.print(s.charAt(i));} B) A)aceg B) ACEG C)abcdefg D) ab 2、有整型数组:int[] x={12,35,8,7,2};,则调用措施Arrays.sort(x)后,数组x中的元素值依次是( ).A) 2 7 8 12 35 ﻩﻩB)12 35 8 7 2 C) 35 12 8 7 2 ﻩﻩﻩD)8 7 12 35 23、下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文献夹下的文献1.txt。
File结构函数中正确的途径和文献名的表示是( )。
File f = new File(填代码处);file =newFileReader(f);in=new BufferedReader(file);A) "./1.txt" B) "../my/1.txt" C) "c:\\my\\1.txt" D) "c:\ my\1.txt" 4、应用程序的main措施中有如下语句,则输出的成果是( )。
String s1=new String("abc"); String s2=new String("abc"); booleanb1=s1.equals(s2); boolean b2=(s1==s2); System.out.print(b1+" "+b2);A)true false B)false true C) truetrue D)falsefalse 5、应用程序的main措施中有如下语句,则输出的成果是( )。
Java期末复习题一、选择题:1、所谓数据封装就就是将一组数据与与这组数据有关操作组装在一起,形成一个实体,这实体也就就是 (B)A、类B、对象C、函数体D、数据块2、定义一个不能被继承的名为Abc的类的正确方法就是(E)A.class Abc{}B.native class Abc{}C.abstract final class Abc{}D.class Abc{final;}E.final class Abc{}3、若要生成ClassA类的一个对象a,以下书写正确的就是(A)A、ClassA a=new ClassA();B、ClassA a=new Class();C、a=new ClassA();D、ClassA a=ClassA();4、类的构造函数被自动调用执行的情况就是在定义该类的(c)A、成员函数时B、数据成员时C、对象时D、构造函数时5、编译运行下面程序时有何种结果?请选择一个正确的答案(A)class Test{public static void main(){System、out、println("hello");}}A.程序不能编译,因为main()方法定义不正确。
B.程序能编译,但不能运行,因为class未声明为public的。
C.程序能无错地编译并运行,但运行时将产生异常。
D.程序运行时显示“hello”。
6、关于抽象方法的说法正确的一项就是(A)A、可以有方法体B、可以出现在非抽象类中C、抽象方法就是没有方法体的方法D、抽象类中的方法都就是抽象方法7、假定AB为一个类,则执行AB x=new AB( );语句时将自动调用该类的(B)A.有形参构造函数B.无形参构造函数C.其她成员函数D.重载函数8、编译并运行如下程序后,结果就是什么?请在给出的选项中选择出正确的答案(E)class Array{public static void main(String[] args){int length=100;int[] d=new int[length];for(int index=0;index<length;index++)System、out、println(d[index]);}}A.因为int[]数组声明不正确,程序不能被编译。
java期末复习题库及答案一、选择题1. Java是一种()。
A. 编译型语言B. 解释型语言C. 标记语言D. 汇编语言答案:B2. Java程序的执行流程是()。
A. 编译 -> 链接 -> 执行B. 编译 -> 执行C. 编译 -> 解释 -> 执行D. 解释 -> 执行答案:C3. 下列哪个是Java的关键字?()A. classB. functionC. includeD. namespace答案:A4. Java中的类是()。
A. 抽象的B. 具体的C. 既是抽象的也是具体的D. 以上都不是答案:A5. Java中,哪个关键字用于定义一个类?()A. publicB. classC. voidD. int答案:B二、填空题1. Java语言的跨平台特性主要得益于______机制。
答案:JVM(Java虚拟机)2. 在Java中,所有的类都是继承自______类。
答案:Object3. Java中的______关键字用于定义一个方法。
答案:void 或者其他返回类型4. 在Java中,______关键字用于定义一个类是公共的。
答案:public5. Java中的______关键字用于定义一个变量是静态的。
答案:static三、简答题1. 简述Java语言的特点。
答案:Java语言具有面向对象、跨平台、健壮性、多线程、安全性、简单性等特点。
2. 什么是Java的垃圾回收机制?答案:Java的垃圾回收机制是指JVM自动检测内存中不再被使用的对象,并释放它们占用的内存资源,以防止内存泄漏。
3. 什么是Java的异常处理机制?答案:Java的异常处理机制是指程序在执行过程中,当出现错误或异常情况时,Java运行时环境提供的一种处理机制,包括try、catch、finally和throw等关键字的使用。
四、编程题1. 编写一个Java程序,实现计算两个整数的和。
java期末考试试题及答案Java期末考试试题及答案一、选择题(每题2分,共20分)1. Java语言属于以下哪类编程语言?A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案: B2. 下列哪个关键字用于定义Java类?A. classB. interfaceC. enumD. package答案: A3. Java中,哪个关键字用于实现继承?A. extendsB. implementsC. overrideD. abstract答案: A4. Java中,哪个关键字用于定义接口?A. classB. interfaceC. abstractD. enum答案: B5. 以下哪个是Java的集合框架中的数据结构?A. ArrayListB. LinkedListC. HashMapD. 所有选项答案: D6. Java中,哪个关键字用于抛出异常?A. tryB. catchC. throwD. finally答案: C7. 下列哪个是Java的访问修饰符?A. publicB. protectedC. privateD. 所有选项答案: D8. Java中,哪个关键字用于定义静态方法?A. staticB. finalC. abstractD. volatile答案: A9. 在Java中,哪个关键字用于定义同步方法?A. synchronizedB. volatileC. transientD. native答案: A10. Java中,哪个关键字用于实现多态?A. extendsB. implementsC. overrideD. abstract答案: C二、简答题(每题5分,共20分)1. 简述Java的垃圾回收机制。
答案: Java的垃圾回收机制是一种自动内存管理方式,它通过垃圾回收器定期检查不再被引用的对象,并释放它们占用的内存。
垃圾回收器工作时,会暂停应用程序的执行,直到回收完成。
java期末考试复习题及答案Java程序设计》课程试卷1.Java语言编写的源程序保存时的文件扩展名是(B).java。
2.若int a=-2,则表达式a。
3的值为(C)8.3.下列对数组元素的引用错误的是(C)a[3]。
因为数组下标从0开始,a[3]超出了数组的范围。
4.在类的定义中可以有两个同名函数,这种现象称为函数(D)重载。
5.构造函数的作用是(D)初始化成员变量。
6.下列关键字中,哪一个不是用于异常处理语句(B)break。
7.类与对象的关系是(A)类是对象的抽象。
8.下列哪一个是Java中不合法的标识符(D)*point。
9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)static void method()。
10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的(C)ArrayList myList=new ArrayList()。
11.Java源文件和编译后的文件扩展名分别为(B).java和.class。
12.在Java中,如果需要在用户自定义的Applet子类中进行画图操作,一般需要重载父类的paint()方法。
13.对于一个Java源文件,正确的顺序应该是先package,再import,最后是class定义。
14.非法的代码是char c = 'u'。
因为单引号中只能包含一个字符。
15.Java语言使用的字符码集是Unicode。
16.如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用private修饰。
17.正确的main方法定义应该是public static voidmain(String[] args)。
18.加互斥锁的关键字是synchronized。
19.抽象方法是没有方法体的方法,而且只能出现在抽象类中。
20.包中的File类是字节流类。
Java期末考试复习题一、选择题1、下列概念中,不属于面向对象的是?( D )A、对象B、继承C、类D、过程调用2、下列属于合法的Java标识符的是( D )A、“ABC”B、&5678C、++rriwoD、saler3、下列叙述中,正确的是(A )A、声明变量时必须指定一个类型B、Java认为number与Number相同C、Java中唯一的注释方式是“//”D、源文件中public类可以有0个或多个4、下列关于类型转换的说法中,正确的是(B )A、将较长的数据类型转换为较短的数据类型可以用自动类型转换B、将较长的数据类型转换为较短的数据类型只能用强制类型转换C、强制类型转换可以保证数据完整性D、boolean类型只能和int类型进行强制类型转换5、按运算符操作数的数目划分,运算符?:的类型是(A )A、三目B、二目C、一目D、四目6、下列代码中要求打印字符串为”second”时,x的取值范围是(B )if(x>0) {System.out.println(“first”);}else if (x>-3) {System.out.println(“second”);}else {System.out.println(“third”);}A、x>0B、x<=0并且x>-3C、x>-3D、x<=-37、属于main()方法的返回类型是(C )A、publicB、staticC、voidD、main8、Java语言使用的字符码集是( D )A、ASCIIB、BCDC、DCBD、Unicode9、下列关于构造方法的叙述中,错误的是(C )A、Java语言规定构造方法名与类名必须相同B、Java语言规定构造方法没有返回值,但不用void声明C、Java语言规定构造方法不可以重载D、Java语言规定构造方法只能通过new自动调用10、每个Java小程序必须定义为( A )A、Applet 类的子类B、Jframe类的子类C、Frame类的子类D、Window类的子类11、用来导入已定义好的类或包的语句是(B )A、mainB、importC、public classD、class12、已知:int[]a=new int[100];在下列给出的数组元素中,不正确的是(D )A、a[0]B、a[1]C、a[99]D、a[100]13、阅读下列代码public class Test2{public static void main(string arge[]){System.out.printion(7/2);}}其执行结果是。
JA V A期末复习题答案一、填空:(20空,每空1分,共20分)1、要激活一个Java小应用程序applet需具有html_文件。
2、一个Java源程序文件必须以_java_为其扩展名.3、Java编译器产生的文件的扩展名为_class_。
4、Java程序的每个方法以_{_开始,以_}_结束。
5、每个Java程序语句以__;__结束。
6、所有程序均可以用顺序、选择和循环三种控制结构编写。
7、一个只有在定义它的方法中是可知的变量称为局部变量.8、被调用方法中的_return_语句可以将表达式的值回送给调用它的方法.9、方法头中的关键字_void__用来表示方法不还返回值。
10、标识符的作用域是程序中可以使用此标识符的范围.11、从被调用方法将控制权交给调用者的两种方式是__return__、__}__.12、当applet开始执行时,调用一次_init__方法。
13、每当浏览器的用户再次访问applet所在的html页时都会调用_start_方法。
14、调用_paint_方法在applet上画图.15、_resize_方法用来在执行applet时改变applet的宽度和高度。
16、_repaint_方法调用applet的update方法,接着update方法又调用applet的paint方法.17、每当浏览器的用户离开applet所在的html页时要调用applet的_stop_方法。
18、在java中可以使用许多方法同名,但各方法使用的参数的类型和数量不同,这称为方法重载.19、限定词_final_用来声明只读变量。
20、数组元素之所以相关,是因为它们具有相同的名字和类型。
21、用于指出数组中某个元素的数字称为数组下标。
22、使用两个下标的数组被称为__二维__数组。
23、通过_·__运算符与类的对象相连,可以访问此类的成员。
24、指定为_private_的类成员只能被此类中的成员访问。
Java课程设计期末考试题库单选题100道及答案解析1. 在Java 中,以下哪个关键字用于定义常量?()A. finalB. staticC. abstractD. interface答案:A解析:在Java 中,使用final 关键字来定义常量,一旦被赋值就不能再被修改。
2. 以下哪个是Java 中的合法标识符?()A. 123abcB. @abcC. _abcD. class答案:C解析:Java 标识符必须以字母、下划线_ 或美元符号$ 开头,后面可以跟字母、数字、下划线或美元符号。
A 选项以数字开头,B 选项以@ 开头,D 选项class 是Java 中的关键字,都不是合法的标识符。
3. Java 中用于声明整数类型变量的关键字是()A. intB. floatC. doubleD. long答案:A解析:int 用于声明整数类型变量。
float 和double 用于声明浮点数类型变量,long 用于声明长整型变量。
4. 以下代码的输出结果是()javaint a = 5;int b = 2;System.out.println(a / b);A. 2.5B. 2C. 3D. 2.0答案:B解析:在Java 中,整数相除结果取整数部分,5 除以 2 的结果是2。
5. 以下哪个是Java 中的逻辑与运算符?()A. &&B. ||C. !D. &答案:A解析:&& 是逻辑与运算符,只有当两个操作数都为真时,结果才为真。
6. 以下代码的输出结果是()javaboolean flag = false;if (flag) {System.out.println("True");} else {System.out.println("False");}A. TrueB. FalseC. 编译错误D. 运行时错误答案:B解析:因为flag 的值为false ,所以执行else 分支,输出False 。
Java练习题一、选择题(每题1分,共30分)1、以下程序的运行结果是:public class Increment{public static void main(String args[]){int c;c = 2;System.out.println(c);System.out.println(c++);System.out.println(c);}}A:A.2 2 2 B:B.2 3 3C:C.2 2 3 D:D.3 4 42、以下关于继承的叙述正确的是A:在Java中类只允许单一继承 B:在Java中一个类只能实现一个接口C:在Java中一个类不能同时继承一个类和实现一个接口 D:在Java中接口只允许单一继承3、关于以下程序段,正确的说法是1.String s1=”abc”+”def”;2. String s2=new String(s1);3. if(s1= =s2)4.System.out.println(“= = succeeded”);×××××试卷第1页(共××页)5. if (s1.equals(s2))6.System.out.println(“.equals() succeeded”);A:行4与行6都将执行 B:行4执行,行6不执行C:行6执行,行4不执行 D:行4、行6都不执行4、应用程序的main方法中有以下语句,则执行后输出的结果是 ( )。
int[] x={125,21,5,168,98};int min=x[0];for(int i=1;i<x.length;i++){if(x[i]<min)min=x[i];}System.out.println(min);A:125 B:5C:98 D:1685、下面程序中类ClassDemo中定义了一个静态变量sum,分析程序段的输出结果。
一、选择题1、下列叙述中,正确的是(C)A)线程与进程在概念上是不相关的B)一个线程可包含多个进程C)一个进程可包含多个线程D)Java中的线程没有优先级2、下列Java源程序结构中前三种语句的次序,正确的是(D )A)import,package,public classB)import必为首,其他不限C)public class,package,importD)package,import,public class3、如果使用Thread t=new Test()语句创建一个线程,则下列叙述正确的是(B )A)Test类一定要实现Runnable接口B)Test类一定是Thread类的子类C)Test类一定是Runnable的子类D)Test类一定是继承Thread类并且实现Runnable接口4、下列关键字中可以表示类不能被继承的是( A )A)final B)defaultC)private D)transient5、阅读下面程序public class Test implements Runnable {public static void main(String[] args) {_______________________t.start();}public void run() {System.out.println(“Hello”);}在程序下划线出填入正确选项是( C )A)Test t=new Test();B)Thread t=new Thread();C)Thread t=new Thread(new Test());D)Test t=new Thread();6、下列方法中可用于定义线程体的是( C )A)start()B)init()C)run()D)main()7、Java语言能做到“编写一次,随处可用”,是指Java语言具有( B )A.很高的通用性 B. 可移植性C. 解释特性D. 很高的安全性8、下列标识符合法的是 ( A )A. _bill_1B. @emailC. 486_CPUD. !_not9、在创建数组时,下列创建的方法中合法的是( B )A.int a[ ] [ ] = new a[10][5] B. int a[ ] = new int[10 ]C. int [ ]a = new a[10 ]D. int a[ ] = new a[10 ]10、在一个类中定义的成员变量和成员方法时,不允许( D )A. 成员方法中的参数与成员变量名相同B. 两个成员方法名相同C. 成员变量与成员方法名相同D. 两个成员变量名相同11、下列语句中,可以作为无限循环语句的是( A )A)for(;;) {} B)for(int i=0; i<10000;i++) {} C)while(false) {} D)do {} while(false)12、下列表达式中,类型可以作为int型的是( C )A)“abc”+”efg” B)“abc”+’efg’C)‘a’+’b’ D)3+”4”13、在多线程并发程序设计中,能够给对象x加锁的语句是( D )A)x.wait( ) B)synchronized(x)C)x.notify( ) D)x.synchronized( )14、接口中,除了抽象方法之外,还可以含有( B )A)变量B)常量C)成员方法D)构造方法15、StringBuffer类字符串对象的长度是( C )A)固定B)必须小于16个字符C)可变D)必须大于16个字符16、子类继承了父类的方法和状态,在子类中可以进行的操作是( D )A)更换父类方法B)减少父类方法C)减少父类变量D)添加方法17、继承是面向对象编程的一个重要特征,它可降低程序的复杂性并使代码( B )A)可读性好B)可重用C)可跨包访问D)运行更安全18、使用DriverManager类的( A )方法连接数据库A)getConnection()B)forNameC)join()D)creatConnection()19、在Java网络编程中,要获取本机的地址可以使用InetAddress类的( B )方法。
A)getHostName()B)getLocalHost()C)getByName()D)getHostAddress()20、用来向数据库DBMS发送SQL的JDBC类是( A )A)Statement B)ConnectionC)DriverManager D)ResultSet21、自定义异常类的父类可以是( C )A)Error B)VirtuaMachineErrorC)Exception D)Thread22、下列语句用来实现数据库操作的正确顺序为( B )。
(1)Connection con=DriverManager.getConnection(url,””,””);(2)ResultSet rs=stmt.executeQuery(“select * from users”);(3)Statement stmt=con.creatStatement();(4)Class.forNmae(“sun.jdbc.odbc.jdbcOdbcDriver”);A)(1)(2)(3)(4) B)(4)(1)(3)(2)C)(4)(3)(1)(2) D)(1)(3)(2)(4)23、在基于Socket的C/S通信中,服务器端监听客户端请求可以使用ServerSocket类的( C )方法A)getPort()B)getInputStream()C)accept()D)close()24、使新创建的线程参与运行调度的方法是( B )A)run()B)start()C)init()D)resume()25、一个子类继承父类,子类不可以继承父类中访问权限设定为( A )的变量和方法。
A. privateB. 未修饰C. publicD. protected26、在异常处理中,如释放资源、关闭文件、关闭数据库等由( C )来完成。
A.try子句B.catch子句C.finally子句D.throw子句27、下列哪些语句关于JAVA中内存回收的说明是正确的? ( B )A.程序员必须创建一个线程来释放内存B.垃圾回收器负责释放无用内存C.内存回收程序允许程序员直接释放内存D.内存回收程序可以在指定的时间释放内存对象28、下列运算符合法的是____。
(A )A.&&B.<>C.ifD.:=29、下列哪一种叙述是正确的____。
( D )A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号30、当某一线程正处于休眠状态,而另一个线程用Thread 类中的interrupt() 方法中断它时,抛出的异常类型是______。
( C )A.IOExceptionB.RuntimeExceptionC.InterruptedExceptionD.ClassNotFoundException31、下列语句序列执行后,num的值是____。
( A )Random rd1=new Random();int num=Math.abs(rd.nextInt())%4+1;A.1~4之间的随机值B.0~3之间的随机值C.0D. 432、_________关键字可以对对象加互斥锁。
( B )A.transientB.synchronizedC.serializeD.static二、填空题1、Java中的线程体是由线程类的 run() 方法进行定义的,线程运行也是从该方法开始执行。
2、类的实例变量在___创建对象_____________时候会被分配内存空间。
3、在Java中若定义抽象类则需要加关键字 abstract 来修饰。
4、按照Java中的命名约定,方法名的起始字母一般都是小写,但是_构造__ 方法例外。
5、java接口内的方法都是公共的、抽象的,实现接口就要实现接口内的所有方法。
6、类是java程序的基本单元。
7、一个线程执行完run方法后,进入___死亡________状态。
8、接口中能定义抽象方法和___常量_________。
9、在Java中,所有的类都是通过直接或间接地继承 _Object__父类得到的。
10、创建一个名为 MyPackage 的包的语句是_package MyPackage________,该语句应该放在程序的位置为程序第一句。
11、Java中布尔类型的变量值有 ____true_____ 和false 。
12、父类的final方法____不可以_________被子类重写。
13、下列程序输出结果是_____工作顺利__________。
class Cry {public void cry() {System.out.println(“大家好“);}}public E {public static void main(String args[]) {Cry hello=new Cry() {public void cry () {System.out.println(“工作顺利”);}};hello.cry();}}14、下列程序输出结果是__你好fine thanks _____________。
public class E {public static void main(String [] args) {try {methodA()’}catch(IOException) {System.out.print(“你好”);Return;}finally {System.ou.println(“fine thanks”);}}public static void methodA() throws IOException {throw new IOException();}}15、下列程序输出结果是: _____15.0________________8.0_________class A {double f(double x,double y) {return x+y;}}class B extends A {double f(int x, int y) {return x*y;}}public E {public static void main(String[] args) {B b=new B();System.out.println(b.f(3,5));System.out.println(b.f(3.0,5.0));}}16、如果在定义类时,出于安全等方面的考虑,限定该类不能被其它类继承,则在定义该类时加关键字 final 来修饰。