文档详情

面向对象程序设计练习题库(附参考答案).docx

发布:2025-04-23约1.42万字共26页下载文档
文本预览下载声明

面向对象程序设计练习题库(附参考答案)

一、单选题(共36题,每题1分,共36分)

1.下列关于IO流的说法中,错误的()

A、InputStream读文件时操作的都是字节

B、Reader是字符输入流

C、FileReader和FileWriter用于读写文件的字节流

D、BufferedReader和BufferedWriter是具有缓冲功能的字符流。

正确答案:C

答案解析:FileReader和FileWriter用于读写文件的字符流

2.下列关于JDK、JRE和JVM关系的描述中,正确的是()。

A、JDK中包含了JRE,JVM中包含了JRE。

B、JRE中包含了JDK,JDK中包含了JVM。

C、JRE中包含了JDK,JVM中包含了JRE。

D、JDK中包含了JRE,JRE中包含了JVM。

正确答案:D

答案解析:JVM是Java虚拟机,JRE是Java程序的运行时环境,JDK是Java程序的编译环境,包含范围递增。所以从小到大一次是JVM—JRE—JDK。

3.下列关于静态变量的描述中,错误的是()

A、静态变量指的是被static修饰的变量

B、静态变量是随着类的加载而加载

C、静态变量可以被所有的实例对象共享

D、静态变量同成员变量一样,都需要通过实例对象来调用

正确答案:D

答案解析:静态变量是通过“类名.变量名”“方式调用的。

4.以下关于类的描述中,错误的是()

A、在面向对象的思想中最核心就是对象,为了在程序中创建对象,首先需要定义一个类

B、定义类的关键字是Interface

C、类中的方法叫成员方法,成员方法又分为实例方法与类方法

D、类中的属性叫成员属性,成员属性又分为实例属性与类属性

正确答案:B

答案解析:定义类的关键字是class。

5.下面对于final修饰方法的描述中,正确的是()

A、final修饰的静态方法不能被类名调用

B、final修饰的方法不能被子类重写

C、final只能修饰非静态方法

D、以上说法都正确

正确答案:B

答案解析:final修饰的方法不能被子类重写。

6.下列关于foreach循环的描述,错误的是()

A、foreach循环只能用于遍历数组或集合中的元素

B、foreach循环可以直接用于遍历Map集合中的元素

C、相当于传统for循环来说,foreach循环简化了书写

D、foreach循环遍历过程中不能对集合或数组元素进行修改

正确答案:B

答案解析:数组或者实现Iterable接口的对象才能使用foreach循环,Map集合不符合要求,显然不能直接使用foreach循环。

7.下列数据结构中,哪一个是ArrayList类的底层实现()

A、数组结构

B、链表结构

C、哈希表结构

D、红黑树结构

正确答案:A

答案解析:ArrayList的底层是数组实现的。

8.以下关于File类的isDirectory()方法的描述,哪个是正确的()

A、判断该File对象所对应的是否是文件。

B、判断该File对象所对应的是否是目录。

C、返回文件的最后修改时间。

D、在当前目录下生成指定的目录。

正确答案:B

9.下面哪个方法可以实现获取字符在某个字符串中第一次出现的索引()

A、charAt(intindex)

B、indexOf(intch)

C、lastIndexOf(intch)

D、endsWith(Stringsuffix)

正确答案:B

10.如果父类的方法是静态的,则子类的方法被()修饰才能覆盖父类的静态方法。

A、protected

B、static

C、private

D、final

正确答案:B

答案解析:只有子类的方法为静态时才能重写父类的静态方法。

11.下列关于throws关键字的说法中,错误的是()

A、可以使用throws关键字一次抛出多种类型的异常

B、throws关键字用于抛出异常

C、使用throws关键字抛出的异常,后续调用者在使用时无需处理

D、使用throws关键字抛出异常后,程序可以编译通过

正确答案:C

12.如果jdk的安装路径为:c:\\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项()

A、c:\\jdk

B、c:\\jdk\\bin

C、c:\\jre\\bin

D、c:\\jre

正确答案:B

答案解析:path环境必须设为javac.exe和java.exe的上一级目录bin。

13.下列选项中,不属于InputStreamReader类的方法的是()

A、getEncoding()

B、close()

C、read()

D、flush()

正确答案:D

答案解析:flush()用于刷新流的缓冲不属于In

显示全部
相似文档