java复习题带答案
- 格式:doc
- 大小:163.00 KB
- 文档页数:22
一、选择题:1.运行Java程序需要的工具软件所在的目录是 A。
A.JDK的bin目录 B.JDK的demo目录C.JDK的lib目录 D.JDK的jre目录解析:运行Java的JDK一共包含五个目录,分别是:bin目录,该目录包含Java编译器、解释器和许多工具(如服务器工具、IDL、package工具等);lib目录,该目录包含Java 库文件jre目录,该目录是Java程序运行环境的根目录,它下面包含 bin子目录,包括平台所用工具和库的可执行文件以及DLL文件;demo目录,该目录包含源代码的程序示例;include目录,该目录包含Win32子目录,都是本地方法的文件。
因此,本题的正确答案是A。
2.下列关于Java语言特点的叙述中,错误的是 A 。
A.Java是面向过程的编程语言 B.Java支持分布式计算C.Java是跨平台的编程语言 D.Java支持多线程解析:Java是新一代编程语言,具有很多特点:简单易学;利用面向对象技术:分布式计算:健壮性(鲁棒性);安全性;跨平台(即体系结构中立):可移植性:解释执行;高性能;多线程;动态性。
因此,本题的正确答案是A。
3.Java的核心包中,提供编程应用的基本类的包是 A 。
A.ng B.java.util C.java.applet D.java.rmi解析:Java的核心包一共有12个,其中:ng包中封装了所有编程应用的基本类;java.util包提供实用程序类和集合类,如系统特性定义和使用、日期函数类、集合等常用工具;java.applet包为Applet提供执行需要的所有类,。
主要是访问Applet内容的通信类。
java.rmi包提供程序远程方法调用所需的类。
因此,本题的正确答案是A。
4.下列关于Java对import语句规定的叙述中,错误的是 C 。
A.在Java程序中import语句可以有多个B.在Java程序中import语句可以没有C.在Java程序中import语句必须有一个D.在Java程序中import语句引入在所有类定义之前解析:Java程序中使用import关键字导入一个包中的类。
java试题库及答案Java试题库及答案一、单选题1. Java语言的特点是什么?A. 面向过程B. 面向对象C. 编译型语言D. 解释型语言答案:B2. 在Java中,用哪个关键字可以定义一个类?A. publicB. classC. voidD. int答案:B3. 下列哪个是Java的合法标识符?A. 2classB. class#2C. _class2D. class:2答案:C4. Java中的main()方法必须定义为什么类型的参数?A. intB. StringC. voidD. None答案:D5. 在Java中,哪个关键字用于实现异常处理?A. tryB. catchC. throwD. All of the above答案:D二、多选题6. 下列哪些是Java的基本数据类型?A. intB. StringC. floatD. boolean答案:A, C, D7. 在Java中,哪些是合法的数组初始化方式?A. int[] arr = new int[10];B. int arr[] = {1, 2, 3};C. int arr = {1, 2, 3};D. int arr = new int[3]{1, 2, 3};答案:A, B8. 下列哪些是Java的控制流语句?A. if-elseB. switch-caseC. forD. try-catch答案:A, B, C三、简答题9. 简述Java的垃圾回收机制。
答案:Java的垃圾回收机制是一种自动内存管理功能,它周期性地执行,回收不再使用的对象所占用的内存空间。
垃圾回收器会跟踪每个对象的引用,当对象的引用计数为0时,即没有任何引用指向该对象,垃圾回收器就会在下一次执行时回收该对象占用的内存。
10. 什么是Java的接口?它有什么作用?答案:Java中的接口是一种完全抽象的类,它不包含任何实现代码,只包含常量和抽象方法的声明。
java考试试题及答案解析一、单选题(每题2分,共20分)1. Java中,下列哪个关键字用于声明一个类?A. classB. publicC. staticD. void答案:A解析:在Java中,关键字class用于声明一个类。
public、static 和void分别是访问修饰符、修饰符和返回类型,不用于声明类。
2. 下列哪个选项是Java中的保留字?A. finalB. StringC. SystemD. main答案:A解析:final是Java中的保留字,用于声明一个变量、方法或类不可被修改。
String是类名,System是类名,main是方法名。
3. 在Java中,下列哪个选项是正确的方法声明?A. public void myMethod();B. public int myMethod();C. public myMethod();D. public void myMethod(int a);答案:D解析:在Java中,方法声明需要指定返回类型和参数列表。
选项A和B缺少参数列表,选项C缺少返回类型。
选项D是正确的方法声明。
4. 下列哪个选项是Java中的合法变量名?A. 2variableB. _variableC. $variableD. variable2答案:D解析:在Java中,变量名必须以字母、下划线或美元符号开头,不能以数字开头。
选项A以数字开头,选项B和C包含非法字符。
选项D是合法的变量名。
5. 在Java中,下列哪个选项是正确的数组声明?A. int[] myArray;B. int myArray[];C. int[] myArray = new int[5];D. int myArray = new int[5];答案:C解析:在Java中,数组声明需要指定数组类型和变量名,然后使用new关键字创建数组实例。
选项A和B缺少数组实例化,选项D将数组赋值给非数组类型的变量。
java基础考试题目及答案一、选择题(每题2分,共20分)1. Java中用于声明变量的关键字是什么?A. varB. letC. constD. class答案:A2. 下列哪个选项是Java中的保留字?A. finalB. publicC. privateD. all of the above答案:D3. Java中哪个类是所有类的根类?A. ObjectB. StringC. SystemD. Thread答案:A4. 在Java中,下列哪个数据类型不是基本数据类型?A. intB. doubleC. StringD. boolean5. Java中,下列哪个关键字用于实现继承?A. extendsB. implementsC. interfaceD. abstract答案:A6. Java中,下列哪个关键字用于实现多态?A. extendsB. implementsC. interfaceD. abstract答案:A7. 在Java中,下列哪个关键字用于声明一个方法?A. classB. methodC. functionD. void答案:D8. 下列哪个选项是Java中的异常处理关键字?A. tryB. catchC. throwD. all of the above答案:D9. Java中,下列哪个关键字用于声明一个接口?B. interfaceC. abstractD. final答案:B10. 在Java中,下列哪个关键字用于声明一个枚举?A. enumB. listC. setD. map答案:A二、填空题(每题2分,共20分)1. Java是一种_________语言,它支持_________编程。
答案:面向对象;多线程2. Java程序的执行是由_________类开始的。
答案:main3. 在Java中,一个类可以继承另一个类的属性和方法,这体现了_________的概念。
java期末复习题库及答案# Java期末复习题库及答案一、选择题1. Java是一种:- A. 编译型语言- B. 解释型语言- C. 汇编语言- D. 机器语言答案:B2. 下列哪个是Java的基本数据类型?- A. String- B. Integer- C. int- D. Object答案:C3. Java中的包是用来:- A. 存储图片- B. 组织类- C. 存储音频- D. 存储视频答案:B4. Java中,哪个关键字用于定义类?- A. class- B. function- C. struct- D. type答案:A5. 下列哪个是Java的异常处理关键字?- A. try- B. catch- C. finally- D. All of the above答案:D二、填空题6. Java是一种面向______的编程语言。
答案:对象7. Java的源代码文件扩展名是______。
答案:.java8. 在Java中,使用______关键字来声明变量。
答案:var9. Java中的main()方法是程序的______点。
答案:入口10. Java中的______关键字用于实现继承。
答案:extends三、简答题11. 简述Java的垃圾回收机制。
答案:Java的垃圾回收机制是一种自动内存管理技术,它通过垃圾回收器定期检查不再被引用的对象,并将它们从内存中清除,从而防止内存泄漏。
12. 描述Java中接口和抽象类的区别。
答案:接口定义了一组方法规范,但不允许实现这些方法。
抽象类可以包含抽象方法和具体方法,并且可以被其他类继承。
接口不能有构造方法,而抽象类可以有。
13. 解释Java中的多态性。
答案:多态性是Java中的一个重要特性,允许将一个引用类型的变量指向多种实际类型的对象。
这意味着同一个接口可以被不同的对象以不同的方式实现,提高了代码的可复用性和灵活性。
四、编程题14. 编写一个Java程序,实现计算圆的面积。
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期末复习题库及答案1. Java中,哪个关键字用于声明一个类?A. structB. classC. functionD. interface答案:B2. 下列哪个数据类型是Java中的原始数据类型?A. StringB. intC. ListD. ArrayList答案:B3. 在Java中,下列哪个选项是正确的方法声明?A. public void myMethod()B. private void myMethod()C. protected void myMethod()D. All of the above答案:D4. Java中,哪个关键字用于实现类的继承?A. extendsB. implementsC. overrideD. super答案:A5. 在Java中,下列哪个选项是正确的构造方法声明?A. public MyClass()B. public void MyClass()C. public int MyClass()D. public static MyClass()答案:A6. Java中,哪个关键字用于声明一个接口?A. classB. interfaceC. structD. enum答案:B7. 在Java中,下列哪个选项是正确的数组声明?A. int[] myArray = new int[10];B. int myArray[] = new int[10];C. Both A and BD. None of the above答案:C8. Java中,哪个关键字用于实现多态?A. extendsB. implementsC. overrideD. super答案:C9. 在Java中,下列哪个选项是正确的异常处理语句?A. try {// code block} catch (Exception e) {// exception handling code block}B. catch (Exception e) {// exception handling code block} try {// code block}C. Both A and BD. None of the above答案:A10. Java中,哪个关键字用于声明一个枚举类型?A. enumB. listC. setD. map答案:A11. 在Java中,下列哪个选项是正确的泛型类声明?A. public class MyClass<T> {}B. public class MyClass<K, V> {}C. Both A and BD. None of the above答案:C12. Java中,哪个关键字用于声明一个静态方法?A. staticB. publicC. privateD. protected答案:A13. 在Java中,下列哪个选项是正确的线程创建方式?A.继承Thread类并重写run方法B.实现Runnable接口并重写run方法C. Both A and BD. None of the above答案:C14. Java中,哪个关键字用于声明一个同步方法?A. synchronizedB. volatileC. transientD. final答案:A15. 在Java中,下列哪个选项是正确的集合框架类?A. ListB. SetC. MapD. All of the above答案:D。
一、单选题1、JAVA是1995年由(A )公司发布的A.SUNB.MicrosoftC.borlandD.Fox Software2、在Java中,负责对字节代码解释执行的是 BA.应用服务器B.虚拟机C.垃圾回收器D.编译器3、设有定义int i = 6 ;,则执行以下语句后,i的值为(C )。
i += i - 1;A.10B. 121C. 11D. 1004、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。
A. .javaB. .classC. .hD. .c5、定义一个类,必须使用的关键字是( B )A. publicB. classC.staticD. interface6、JAVA中不属于基本数据类型的是(C )。
A.StringB.intC.charD.boolean7、0.6332的数据类型是(B)A. floatB. doubleC. FloatD. Double8、关于类和对象的叙述正确的是:( D )A.类是对象的实例化B.类的静态属性和全局变量的概念完全一样,只是表达形式不同C.类的成员至少有一个属性和一个方法D.Java的类分为两大部分:系统定义的类和用户自定义的类9、void 的含义:( C)A.方法体为空B.定义的方法没有形参C.定义的方法没有返回值D.方法的返回值不能参加算术运算10、设 x = 2, y = 4, z = 5,则表达式 y*=z--/++x 的值是(C)A. 3B. 3. 5C. 4D. 511、访问权限最小的控制符是( D )。
A. publicB. protectedC. defaultD. private12、编译Java程序的命令是(B )A. cmdB. javacC. javaD. javadoc13、下列程序test类中的变量c的最后结果为(D )public class testpublic static void main(String args[]){int a = 10;int b;int c;if(a>50){b = 9;}c = b + a;}}A. 10B. 0C.19D.编译错误14、下列不属于面向对象编程的三个特征为( B )A.封装B.指针操作C.多态性D.继承15、下面程序定义了一个类,关于该类说法正确的是(A'Abstract class abstractClass{A.该类能调用new abstractClass(),实例化为一个对象B.该类不能被继承C.该类的方法都不能被重载D.以上说法都不对16、System.out.println(“5”+2);的输出结果是(A )A. 52B. 7C. 2D. 517、下面哪些是合法的标示符( A )A. $perB. 123C. *pointD. this 18、定义常量时需要用到的关键字是( C)。
java考试题及答案一、选择题1. Java中用于创建新对象的关键字是()。
A. classB. newC. thisD. super答案:B2. 下列哪个选项是Java语言的特点?()A. 支持多继承B. 所有代码必须位于类中C. 支持自动垃圾回收D. 所有选项都是答案:C3. 在Java中,如果需要实现多线程,应该继承哪个类?()A. ObjectB. ThreadC. RunnableD. System答案:B4. 下列关于Java异常处理的描述,哪项是错误的?()A. try块可以单独使用B. catch块必须跟随在try块之后C. finally块用于执行清理操作,无论是否发生异常都会执行D. throw关键字用于手动抛出异常答案:A5. 在Java中,下列哪个是正确的数组初始化方式?()A. int[] arr = {1, 2, 3} {4, 5, 6};B. int[] arr = new int[3];C. int[] arr = new int[] {1, 2, 3};D. int[] arr = {1, 2, 3, 4, 5};答案:C二、填空题1. 在Java中,每一个类都是从______类隐式继承而来的,因此所有的类都具有该类的属性和方法。
答案:Object2. Java中的______关键字用于定义一个类为另一个类的子类,实现代码的复用。
答案:extends3. 当需要在Java程序中捕获多种类型的异常时,可以使用______关键字来指定多个捕获类型。
答案:catch4. 在Java中,______关键字用于定义一个方法或构造器的参数类型和顺序。
答案:paramter5. 如果需要在Java中定义一个接口,应该使用______关键字。
答案:interface三、判断题1. Java中的所有异常都是ng包的Throwable类的子类或孙子类。
()答案:正确2. 在Java中,所有的类都必须显式地指定一个父类。
一、选择题:1.运行Java程序需要的工具软件所在的目录是 A。
A.JDK的bin目录 B.JDK的demo目录C.JDK的lib目录 D.JDK的jre目录解析:运行Java的JDK一共包含五个目录,分别是:bin目录,该目录包含Java编译器、解释器和许多工具(如服务器工具、IDL、package工具等);lib目录,该目录包含Java 库文件jre目录,该目录是Java程序运行环境的根目录,它下面包含 bin子目录,包括平台所用工具和库的可执行文件以及DLL文件;demo目录,该目录包含源代码的程序示例;include目录,该目录包含Win32子目录,都是本地方法的文件。
因此,本题的正确答案是A。
2.下列关于Java语言特点的叙述中,错误的是 A 。
A.Java是面向过程的编程语言 B.Java支持分布式计算C.Java是跨平台的编程语言 D.Java支持多线程解析:Java是新一代编程语言,具有很多特点:简单易学;利用面向对象技术:分布式计算:健壮性(鲁棒性);安全性;跨平台(即体系结构中立):可移植性:解释执行;高性能;多线程;动态性。
因此,本题的正确答案是A。
3.Java的核心包中,提供编程应用的基本类的包是 A 。
A.ng B.java.util C.java.applet D.java.rmi解析:Java的核心包一共有12个,其中:ng包中封装了所有编程应用的基本类;java.util包提供实用程序类和集合类,如系统特性定义和使用、日期函数类、集合等常用工具;java.applet包为Applet提供执行需要的所有类,。
主要是访问Applet内容的通信类。
java.rmi包提供程序远程方法调用所需的类。
因此,本题的正确答案是A。
4.下列关于Java对import语句规定的叙述中,错误的是 C 。
A.在Java程序中import语句可以有多个B.在Java程序中import语句可以没有C.在Java程序中import语句必须有一个D.在Java程序中import语句引入在所有类定义之前解析:Java程序中使用import关键字导入一个包中的类。
在一个Java源程序中,可以有0个或多个import语句,但是必须在所有类定义之前引入标准类。
因此,本题中选项C的说法是错误的。
5.在编译Java程序时,用于指定生成.class文件位置的选项是B。
A.-g B.-d C.-verbose D.-vonarn解析:javac.exe是Java编译器,能将源程序代码编译成字节码,以.class扩展名存入Java工作目录中。
它的命令格式为:javac[选项]文件名。
其中[选项]包括几下几个:●-g 输出文件中加行号以及局部变量信息,为调试程序时用。
●-o 对类文件进行优化编译。
●-nowarn 关闭警告信息,只显示错误信息。
●-verbose 显示源代码文件和字节码文件的相关信息。
●-d<目录>指定存放生成的类(.class)文件的位置根据上述介绍可知,在编译Java程序时,可以通过选项-d来指定生成的.class文件的位置。
因此,本题的正确答案是B。
6.下列关于构造方法的叙述中,错误的是C。
B.Java语言规定构造方法没有返回值,但不用void声明C.Java语言规定构造方法不可以重载D.Java语言规定构造方法只能通过new自动调用解析:本题考查的是构造方法的使用。
Java浯言中,构造方法是一种特殊的方法,是为对象初始化操作编写的方法,用它来定义对象的初始状态。
Java中的每个类都有构造方法,它也是由方法名、参数和方法体组成的。
构造方法有如下特点:●构造方法的名字必须与类名相同。
●构造方法不返回任何数据,但不用void来声明。
●用户不能直接调用构造方法,必须通过关键字new自动调用。
●构造方法可由用户在类中定义,默认时由Java语言自动生成。
但它是个空方法,变量被赋予该数据类型的默认值。
●在构造方法实现中,可以进行方法重载,即定义多个构造方法。
重载构造方法的目的是使类具有不同的初始值,为类对象的初始化提供方便。
根据上述构造方法的特点可知,本题选项C的说法是错误的7.下列叙述中错误的是D。
A.Java Application与Applet所用编译命令相同B.通常情况下,Java Application只能有一个main()方法C.Java Applet必须有HTML文件才能运行D.Java Applet程序的.class文件可用Java命令运行解析:本题考查的是Java中的Applet以及Applt与Application的区别。
选项A,Applet的运行方式和Java Application不同,但是Applet在运行前也必须被编译为类文件,这点和Application是一样的。
因此,它们都用javac进行编译。
因此,选项A的说法是正确的。
选项B,在每个应用程序Application中可以包含多个方法,但应用程序都是以main()方法为入口点执行,因此必须有且只能有一个main方法。
故选项B的说法是正确的。
选项C,Applet是能够嵌入HTML语言中,并能够在浏览器中运行的类。
Applet的运行环境是Web浏览器,所以必须建立HTML文件,告诉浏览器如何加载与运行Applet。
所以,选项C的说法是正确的。
选项D,根据选项C的分析,Applet是不能直接通过Java命令行启动运行的。
因此,选项D的说法是错误的。
8.处理对象传输的接口是A。
A.Serializable B.Cloneable C.ItenListener D.ActionListener解析:处理对象传输就是把对象串行化。
Java语言中,如果要串行化某些类的对象,这些类就必须实现Serializable接口。
因此,本题的正确答案是A。
9.在读取二进制数据文件的记录时,为了提高效率常常使用的一种辅助类是C。
A.InputStream B.FileInputStream C.BufferedInputStream D.BufferedReader 解析:本题考查Java语言的输入/输出流。
选项A的InputStream类、选项B、的FilelnputStream类、选项D的BufferedReader类都是Java语言中和输入输出直接相关的类,不属于辅助类,因此可以直接判断出选项C为正确答案。
另一方面,我们也可以详细分析每个选项。
题目中要求读取二进制数据文件的记录,因此要使用字符输入流。
选项A的InputStream是.java.io包中的抽象类,是所有字节输入流的父类。
题目要求的是字符输入流,显然,选项A不对。
选项B的 FileInputStream是一个字节输入流,它可以对一个磁盘文件涉及的数据进行处理。
和选项A一样,选项B是错的。
选项C的StringBuffer是一个表示可变长度字符串的类,在读取文件时并不知道读取字符的具体长度,因此为StringBuffer类对象分配的内存会自动扩展从而容纳新增的字符,这提高了读取的效率。
所以,StringBuffer是一个可以提高读取文件效率的辅助类。
故选项C是正确答案。
选项D的BufferedReader虽然是一个字符输入流,用于从字符输入流中读取文本并将字符存入缓冲区。
但是, BufferedReader直接用于文件的读取,不起辅助作用。
所以,选项D是错误的。
10.下列事件监听器中,无法对TextField对象进行事件监听和处理的是D。
A.ActionListener B.FocusListener C.MouseMotionListener D.ChangeListen 解析:本题考查AWT事件处理。
事件就是发生在用户界面上的用户交互行为所产生的一种效果。
每类事件都有对应的事件监听器,监听器就是接口。
在单行文本输入区(TextFielD) 构件上可能发生的事件包括:FocusEvent焦点事件,焦点的获得和丢失。
这类事件所对应的事件监听器是FocusListener:ActionEvent动作事件,按钮按下,TextField中按Enter 键。
这类事件所对应的事件监听器是ActionListener; MouseEvent鼠标事件,鼠标单击、释放、拖动、移动。
这类事件所对应的事件监听器是MousetMofionListener。
当然还包括其他一些,但是在所有事件及其所对应的事件监听器中,不包括ChangeListener这样一个事件监听器。
因此,本题的正确答案是 D。
11.有一段java 应用程序,它的主类名是Abc,那么保存它的源文件名可以是C。
A.abc.java B.Abc.class C.Abc.java D.以上都可以12.每个Java小应用程序必须定义为 A 。
A.Applet类或JApplet类的子类 B.JFrame类的子类C.Frame的子类 D.Window的子类解析:本题考查Applet的基本知识。
Applet类定义了小应用程序(Applet)与其运行环境之间的一个接口;JApplet是Applet类的扩展,它继承了Applet的方法和执行机制,同时也增加了对Swing构件的支持。
每个Java小应用程序都必须是Applet类或JApplet类的子类。
因此,本题的正确答案是A。
13.在Applet的init()方法被调用后,接下来最先被调用的方法是B。
A.run() B.start() C.stop() D.destroy()解析:Applet生命周期包括Applet的创建、运行与消亡几个状态。
Applet类提供了在生命周期不同阶段响应主要事件的4种方法,这4种方法的调用次序如下图所示。
由上图可知,在调用完init()方法后,接下来最先被调用的是start()方法。
因此,本题的正确答案是B。
14.整型数据类型中,需要内存空间最少的是 D 。
A.short B.long C.int D.Byte15.下列标识符(名字)命名原则中,正确的是D。
A.类名的首字母小写 B.变量和方法名的首字母大写C.接口名的首字母小写 D.常量完全大写解析:Java命名的基本原则包括如下几条:、$不作为变量名、方法名的开头;变量名、方法名首单词小写,其余单词只有首字母大写;接口名、类名首单词第一个字母大写;常量完全大写。
根据上述命名规则,选项D的说法是正确的。
16.Java中定义常量的保留字是B。
A.const B.final C.finally D.Native解析:fmal是最终的修饰符,其修饰的是常量。
17.在调用方法时,若要使方法改变实参的值,可以 C 。
A.用基本数据类型作为参数 B.用指针作为参数C.用对象作为参数 D.以上都不可以18.下列有关Java布尔类型的描述中,正确的是A。