1、第 1 章 Java 开发入门习题一、 填空题1. 将.java 源文件编译为.class 文件的是【 】命令。2. 在 Eclipse 窗口中选择菜单【 】NewJava Project 创建 Java 项目。3. 在安装 JDK 的过程中,有三个功能模块可供选择,它们分别是【 】 , 【 】和【 】 。4. 将 Hello.java 文件编译为 class 文件,需要键入【 】命令。5. JRE 是 Java 程序的【 】 。二、 判断题1. Eclipse 只是一个框架和一组服务,所有功能都是将插件组件加入到 Eclipse 框架中来实现的。 ( )2. JDK 安装成功后,需要将 bi
2、n 目录的路径配置在环境变量 path 中。 ( )3. Java 配置环境变量 path 的目的是为了可以查找到.class 文件。 ( )4. JDK 安装成功后,classpath 环境变量必须配置。 ( )5. 在命令行窗口中,编译 Demo.java 文件可以输入 javac Demo。 ( )三、 选择题1. 如果 jdk 的安装路径为: c:jdk,若想在命令窗口中任何当前路径下,都可以直接使用 javac 和 java 命令,需要将环境变量 path 设置为以下哪个选项( )A: c:jdkB: c:jdkbinC: c:jrebinD: c:jre2. 下列关于 classp
3、ath 环境变量的说法中,说法正确的是( )A: classpath 配置一次后可永久使用B: 没有 classpath 环境变量就不能运行 Java 程序C: classpath 环境变量可以让虚拟机找到 class 文件的目录D: 查看当前 classpath 配置的命令是:classpath3. 下面哪种类型的文件可以在 Java 虚拟机中运行( )A: .javaB: .jreC: .exeD: .class4. Java 属于以下哪种语言( )A: 机器语言B: 汇编语言C: 高级语言D: 以上都不对5. 下列关于 Java 特点的描述中,错误的是( ) 。A: Java 是一门面向
4、对象的语言B: Java 具有自动垃圾回收的机制C: Java 可以运行在 Window 和 Linux 等不同平台上D: Java 中只支持单线程序运行答案一、 填空题1. javac2. File3. 开发工具;源代码;公共 JRE4. javac Hello.java 5. 运行环境 二、 判断题1. 对2. 对3. 错4. 错5. 错三、 选择题1. B2. C3. D4. C5. D第 2 章 Java 编程基础习题一、 填空题1. 可以通过【 】循环使程序能够多次键盘输入。2. Java 中可以通过【 】类来获取随机数。3. 定义一个方法时,要有访问修改符、返回值类型、方法名、 【
5、 】 。4. 当方法中的返回值类型是【 】时,可以不写 return 语句。5. 十进制数 12 转换成二进制的结果是【 】 。二、 判断题1. 数组的最大下标的值比它的长度小 1。 ( )2. 二维数组中的元素还是一个数组。 ( )3. 在表达式中,乘法和除法运算优先级别最高。 ( )4. 若 x = 5,则表达式(x + 5)/3 的值是 3。 ( )5. 常量就是程序中常常变化的数据。 ( )三、 选择题1. 阅读下面的代码片段public static int add(int a,int b) return a + b; 下列选项中,可以在 main()方法中调用 add()方法的是(
6、 )A: int num = add(1.0,2.0);B: int num = add(1,2);C: int num = add(true,flase);D: int num = add(“1“, “2“);2. 下面关于布尔类型变量的定义中,正确的是( )A: boolean a=TRUE;B: boolean b=FALSE;C: boolean c=true;D: boolean d=false;3. 下面浮点型数据的定义中,错误的是( )A: float a=1.23;B: double b=1.23;C: double c=1.5E4;D: float d=a;4. 以下关于三元
7、运算符的说法中,正确的是( )A: 三元运算符第一个表达式的结果必须是 boolean 类型值。B: 三元运算符第一个表达式的结果可以是任意类型的值。C: 三元运算符只能得到基本类型的结果。D: 以上说法都不对。5. while 语句的循环体中不能包含的语句是( )A: while 语句B: 方法定义语句C: if 语句D: switch 语句答案一、 填空题1. while2. Random3. 参数列表4. void5. 1100二、 判断题1. 对2. 对3. 错4. 对5. 错三、 选择题1. B2. D3. A4. A5. B第 3 章 面向对象(上)习题一、 填空题1. 在 Jav
8、a 中使用【 】类型的实例对象表示一个字符串。2. 在 Java 中解决成员变量与局部变量名称冲突时,可以使用【 】关键字。3. 类的封装是指在定义一个类时,将类中的属性私有化,即使用【 】关键字来修饰。4. 在一个 Java 类中,可以使用【 】关键字来修饰成员变量,该变量被称作静态变量。5. 在垃圾回收机制中,可以通过调用【 】方法来通知 Java 虚拟机立即进行垃圾回收。二、 判断题1. 在 Java 中,对象是通过类创建出来的。 ( )2. 垃圾回收机制保证了 Java 程序不会出现内存溢出。 ( )3. 在成员方法中可以使用“this(参数 1,参数 2)”来调用其它的构造方法。 (
9、 )4. static 关键字可以修饰成员变量,也可以修饰局部变量。 ( )5. 成员内部类,就是将一个类定义在另一个类的成员的位置。 ( )三、 选择题1. 请阅读下面的程序,关于程序的运行结果说法正确的是( )class Demoprivate static int x ;public static void main(String args)System.out.println(x+);A: 结果为 0B: 结果为 1C: 无结果D: 编译失败2. 下列程序的运行结果是( )class Demoprivate String name;Demo(String name)this.name
10、= name;private static void show()System.out.println(name)public static void main(String args)Demo d = new Demo(“lisa”);d.show();A: 输出 lisaB: 输出 nullC: 输出 nameD: 编译失败,无法从静态上下文中引用非静态变量 name3. 下面关于构造方法的调用,正确的是( )A: 构造方法在类定义的时候被调用B: 构造方法在创建对象的时候被调用C: 构造方法在调用对象方法时被调用D: 构造方法在使用对象的变量时被调用4. 下列关于成员变量默认值的描述中,
11、错误的是( )A: byte 类型的数据默认值是 0B: int 类型的数据默认值是 0C: long 类型的数据默认值是 0D: float 类型的数据默认值是 0.0f5. “隐藏对象的属性和实现细节,仅对外提供公有的方法”描述的是面向对象的哪个特征( )A: 封装B: 继承C: 多态D: 以上都不是答案一、 填空题1. String2. this3. private4. static5. System.gc()二、 判断题1. 对2. 错3. 错4. 错5. 对三、 选择题1. A2. D3. B4. C5. A第 4 章 面向对象(下)习题一、 填空题1. RuntimeExcepti
12、on 类及其子类都是【 】异常。2. throw 关键字用于在方法中声明抛出异常的 【 】 。3. 自定义异常需要继承【 】类。4. 定义一个抽象类的关键字是【 】 。5. final 修饰的方法,不能被子类【 】 。二、 判断题1. RuntimeException 类及其子类用于表示运行时异常。 ( )2. Java 中的异常类都继承自 java.lang.Throwable 类。 ( )3. throws 关键字用于对外声明方法可能发生的异常,这样调用者在调用方法时,可以明确知道该方法有异常,并进行相关处理。 ( )4. protected 修饰的类,类中的所有方法只能给子类使用。 (
13、)5. Object 是所有类的父类。 ( )三、 选择题1. 下列符号中,哪个用于分隔 throws 关键字抛出的多个异常( )A: ;B: ,C: catch(Exception e)System.out.println(e);System.out.println(x)public static int div(int a,int b)return a / b ;A: 输出 1B: 输出 0C: 输出 0.5D: 编译失败3. 以下关于编译异常说法正确的是( )A: 编译异常就是指 Exception 以及其子类B: 编译异常如果产生,可以不用处理C: 编译异常如果产生,必须处理,要么捕获
14、,要么抛出D: 编译异常指的就是 Error4. 下列关于 protected 的说法中,正确的是( )A: protected 修饰的方法,只能给子类使用B: protected 修饰的类,类中的所有方法只能给子类使用C: 如果一个类的成员被 protected 修饰,那么这个成员既能被同一包下的其它类访问,也能被不同包下该类的子类访问。D: 以上都不对5. 下列关于对象的类型转换的描述,说法错误的是( )A: 对象的类型转换可通过自动转换或强制转换进行B: 无继承关系的两个类的对象之间试图转换会出现编译错误C: 由 new 语句创建的父类对象可以强制转换为子类的对象D: 子类的对象转换为父
15、类类型后,父类对象不能调用子类的特有方法答案一、 填空题1. 运行时2. 实例对象3. Exception4. abstract5. 重写二、 判断题1. 对2. 对3. 对4. 错5. 对三、 选择题1. B2. C3. C4. C5. C第 5 章 Java API习题一、 填空题1. 在程序,获取字符串长度的方法是【 】 。2. StringBuffer 类的默认容量是【 】个字符。3. Math 类中,用于获取一个数的绝对值的方法是【 】 。4. String 类中,将字符串转换为字符数组的方法是【 】 。5. Random 类的【 】方法可以随机生成 Int 类型的随机数。二、 判断
16、题1. switch 语句不支持字符串类型。 ( )2. String 类的 append()方法可以将数组元素和空格连接成字符串。 ( )3. ceil()和 floor()方法返回的都是 double 类型的数。 ( )4. Random 类的 nextInt( )方法会生成一个 int 类型的随机数。 ( )5. JAVA 中拆箱是指将基本数据类型的对象转为引用数据类型。 ( )三、 选择题1. 阅读下面的代码,输出结果是( )public static void main(String args) Random random1 = new Random(10); Random rand
17、om2 = new Random(10); for(int i=0;i5;i+)System.out.print(random1.nextInt(5);System.out.println();for(int i=0;i5;i+)System.out.print(random2.nextInt(5);A: 3030130301B: 5048132680C: 3268023579D: 11111111112. 下面哪个方法可以实现获取字符在某个字符串中第一次出现的索引( )A: charcharAt(intindex)B: intindexOf(intch)C: intlastIndexOf(i
18、ntch)D: booleanendsWith(Stringsuffix)3. 假如 indexOf()方法未能找到所指定的子字符串,那么其返回值为( )A: falseB: 0C: -1D: 以上答案都不对4. 下列对于 Runtime 的描述中,错误的是( )A: 每一个 Java 应用程序运行时都产生一个 Runtime 类实例B: Runtime 实例可以将应用程序和运行环境相结合C: Runtime 类中的方法是多例的D: Runtime 实例不需要创建,直接通过 getRuntime()方法获取5. 阅读下列代码public class Example public static
19、void main(String args) int srcArray = 11, 12, 13, 14 ;int destArray = 21, 22, 23, 24 ;System.arraycopy(srcArray, 1, destArray, 2, 2);for (int i = 0; i destArray.length; i+) System.out.print(destArrayi + “ “);下列选项中,程序的运行结果是( )A: 21221213B: 21221112C: 21111224D: 发生数组角标越界异常答案一、 填空题1. length()2. 163. ab
20、s()4. toCharArray ()5. nextInt ()二、 判断题1. 错2. 错3. 对4. 对5. 错三、 选择题1. A2. B3. C4. C5. A第 6 章 集合类习题一、 填空题1. 键和值对象之间存在一种对应关系,称为【 】 。2. java.util.Iterator 接口的主要作用是对 【 】进行迭代的迭代器。 (写顶级接口) 。3. Map 接口的主要实现类有 【 】和【 】 。4. ArrayList 集合中大部分方法都是从父类 Collection 和 List 继承过来的,其中【 】方法和【 】方法用于实现元素的存取。5. 当向 HashSet 集合中添
21、加一个对象时,首先会调用该对象的【 】方法来计算对象的哈希值。二、 判断题1. HashSet 是根据对象的哈希值来确定元素在集合中的存储位置,因此性能较差。 ( )2. 可以通过 Scanner 类的 next()方法来接受控制台的信息。 ( )3. Map 接口是一种双列集合,它的每个元素都包含一个键对象 Key 和值对象Value。 ( )4. Iterator 接口是 Java 集合框架中的成员。 ( )5. 集合是长度可变的数组。 ( )三、 选择题1. 阅读下面代码import java.util.ArrayList;public class Demo public static void main(String args) ArrayList list = new ArrayList();list.add(“aaa“);list.add(“bbb“);list.add(“ccc“);for (Object obj : list) if (obj.equals(“bbb“) list.remove(obj);System.out.println(list);下列选项中,哪一个是程序执行后的结果( )A: aaa,cccB: aaa,bbb,cccC: