黑马程序员Java IO知识测试 C卷(材料)

2020-03-03 16:35:36 来源:范文大全收藏下载本文

集合部分测试题

考试宣言: 同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷! 我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!

本套题共40道不定项选择题,其中单选30道,多选10道。单选2分/题,多选4分/题。多选题不全对半分,全对满分。

1.所有异常的父类是()A a) Throwable类 b) Error类

c) Exception类

d) RuntimeException类

2.下列关键字能和try一起使用的有()CD a) final b) finalize c) finally d) catch

3.实现下列哪个接口,可以启用序列化功能()b a) Runnable接口

b) Serializable接口 c) Comparable接口 d) Comparator接口

4.当方法遇到异常(编译时异常)又不知如何处理时,下列哪种说法是正确的()C a) 捕获异常(try{…}catch{…}) b) 抛出异常(throw 异常对象) c) 声明异常(throws 异常类型) d) 嵌套异常

5.如何自定义一个异常类( )AB a) 让这个类继承Exception b) 让这个类继承RuntimeException c) 让这个类继承Comparator d) 让这个类继承Comparable

6.可以用来操作路径的类是()a a) File b) FileStream c) OutputStream d) FileReader

7.File类中,创建多级目录,可以通过以下那个方法()d a) create() b) createNewFile() c) mkdir() d) mkdirs()

8.下列哪一个import命令可以使我们在程序中创建输入/输出流对象()B a) import java.sql.*; b) import java.io.*; c) import java.net.*; d) import java.util.*;

9.下列关于Java中文件输入输出的说法正确的是()A a) 在Java中,文件的输入输出功能是通过流来实现的

b) 如果要把数据写入一个文件中,需要创建一个输入流对象 c) 字符流在某些方面比如图片的处理,比字节流更方便x d) 可以通过Reader r = new Reader(“c:\\java.txt”);创建一个输入流对象

10.获取指定目录下所有的文件,可以通过哪个方法实现:()D a) b) c) d)

list() getDir(); listFile() listFiles() 11.下面用字符流能成功拷贝的文件有()BC a) java基础自测题.doc b) 学生考试答案.xml c) Student.java d) 学生信息表.xlsx

12.看下面程序,加入xxx.txt里面有一个文字”a”,请问该程序输出结果是()D public static void demo1() throws FileNotFoundException, IOException {

InputStream is = new InputStream(\"xxx.txt\");

int x = is.read();

System.out.println(x); } a) A b) a c) 97 d) 编译报错

13.如果我想保留a.txt中原有的内容,在后面追加写入数据,下面创建输出流对象写法正确的是()B a) FileOutputStream fos = new FileOutputStream(“a.txt”);

b) FileOutputStream fos = new FileOutputStream(“a.txt”,true); c) BufferedOutputStream bos = new BufferedOutputStream(“a.txt”,true); d) OutputStreamWriter osw = new OutputStreamWriter(new InputStream(“a.txt”,true),”gbk”);

14.下面关于字节流说法不正确的是()BC a) 字节流拷贝文件时一次读取一个字节 b) 字节流拷贝文件时一次读取两个字节

c) 字节流使用完后需要关,内存输出流使用完后也必须要关闭 d) FileOutputStream没有缓冲区,而FileWriter有缓冲区

15.判断一个文件的大小我们可以使用哪个方法(AD)

a) File类的length()方法

b) File类的available()方法

c) FileInputStream类的length()方法 d) FileInputStream类的available()方法

16.已知 海贼王全集.avi 这个文件有20Gb 的大小,复制该文件最快的方式是()D a)

FileInputStream fis = new FileInputStream(\"双元.jpg\");

FileOutputStream fos = new FileOutputStream(\"copy.jpg\");

int b;

while((b = fis.read()) != -1) {

fos.write(b);

}

fis.close();

fos.close(); b)

c)

d)

FileInputStream fis = new FileInputStream(\"致青春.mp3\"); FileOutputStream fos = new FileOutputStream(\"copy.mp3\"); byte[] arr = new byte[fis.available()];

fis.read(arr);

fos.write(arr);

fis.close(); fos.close();

FileInputStream fis = new FileInputStream(\"xxx.txt\"); FileOutputStream fos = new FileOutputStream(\"yyy.txt\");

byte[] arr = new byte[1024]; int len; while((len = fis.read(arr)) != -1) { fos.write(arr,0,len); }

fis.close(); fos.close();

FileInputStream fis = new FileInputStream(\"xxx.txt\"); FileOutputStream fos = new FileOutputStream(\"yyy.txt\");

byte[] arr = new byte[1024*8]; int len; while((len = fis.read(arr)) != -1) {

fos.write(arr,0,len); }

fis.close(); fos.close(); 17.BufferedInputStream这个类是哪个设计模式的体现()B a) 单例设计模式 b) 装饰设计模式 c) 工厂设计模式 d) 适配器模式

18.下面说法正确的是()D a) OutputStream是个接口 b) Writer是个接口

c) BufferedOutputStream是FileOutputStream的父类x d) Reader是InputStreamReader的父类

19.下列关于Java I/O中字符输入流Reader类中的read方法描述错误的是?(A)

a) read()方法的返回值类型为char类型 b) read()方法的返回值类型为int类型

c) read()方法的返回值如果为-1,表示到流的末尾

d) read(char[] cbuf)方法表示将读到的多个字符存入字符数组cbuf中

20.下列哪些选项是Java I/O中字符输出流FileWriter类中的write方法?()ABCD a) write(char[] cbuf)写入字符数组

b) write(char[] cbuf, int off, int len)写入字符数组的某一部分 c) write(int c)写入单个字符 d) write(String str)写入字符串

21.假设存在xxx.txt文件,内容为”大家好”,以下代码运行的结果为?(A) public cla Test { public static void main(String[] args) throws IOException {

FileReader fr = new FileReader(\"xxx.txt\");

FileWriter fw = new FileWriter(\"zzz.txt\");

int c;

while((c = fr.read()) != -1) {

fw.write();

}

fr.close();

fw.close(); } } a) b) c) d)

编译报错

程序正常运行,zzz.txt文件中的内容为”大家好” 程序正常运行,但是没有生成zzz.txt文件 程序正常运行,但是zzz.txt文件中是乱码

22.FileWriter类直接继承哪个类?(A)

a) OutputStreamWriter b) Writer c) BufferedWriter d) InputStreamReader

23.关于自定义字符数组拷贝文件的说法错误的是?()AC a) 自定义的数组越大越好

b) 自定义的数组既不能太大,也不能太小

c) 可以使用FileReader类的available()方法的返回值作为数组的大小

d) 建议定义为1024的整数倍,但不能太大,防止内存溢出

24.假设xxx.txt文件中存了2000个汉字,下列程序运行后输出的结果是?(B)

public cla Test { public static void main(String[] args) throws IOException {

FileReader fr = new FileReader(\"xxx.txt\");

FileWriter fw = new FileWriter(\"yyy.txt\");

int count = 0;

char[] arr = new char[1024];

int len;

while((len = fr.read(arr)) != -1) {

count++;

fw.write(arr,0,len);

}

fr.close();

fw.close();

System.out.println(count); } }

a) 1 b) 2 c) 3 d) 4

25.下面的哪个类代表字节输入流到字符输入流转换的桥梁?()A a) InputStreamReader b) OutputStreamWriter c) FileReader d) BufferedReader

26.BufferedReader读取一行时,判断该行是否结束的标志是什么?()AD a)

\\r b)

null c)

-1 d)

\\r\\n

27.缓冲流是否需要关闭()B a) 否 b) 是

c) 以上答案都不对 d) 关不关都可以

28.以下代码运行后输出的结果是?(A)

public cla Test { public static void main(String[] args) throws IOException {

System.out.println(fun(5)); } public static int fun(int num) {

if(num == 1) {

return 1;

}else {

return num * fun(num2) + fun(num - 1);

} } } a) 34 b) 13 c) 21 d) 5

30.为了提高读写性能,用下面的哪些流?()ABCD a) BufferedInputStream b) BufferedOutputStream c) BufferedReader d) BufferedWriter

31.下列关于Java I/O中哪个流可以将多个文件中的内容合并到一个文件中(序列流)?(cC a) SequenceOutputStream b) InputStreamReader c) SequenceInputStream d) OutputStreamWriter

32.下面的哪个流表示内存输出流?(

)A a) ByteArrayOutputStream b) ByteArrayInputStream c) ObjectInputStream d) ObjectOutputStream

33.下面说法正确的是?(

)b a) 可以通过ByteArrayOutputStream和ByteArrayInputStream实现文件的复制

)b) 不可以通过ByteArrayOutputStream和ByteArrayInputStream实现文件的复制 c) 用ByteArrayOutputStream和ByteArrayInputStream实现文件的复制,会出现乱码 d) 用ByteArrayOutputStream和ByteArrayInputStream实现文件的复制,不会出现乱码

34.下面说法错误的是?(

)D a) ByteArrayOutputStream内部封装了字节数组

b) new ByteArrayOutputStream()利用空参构造创建对象时,内部的数组的大小为32 c) toByteArray()以字节数组的形式返回数据 d) 以上说法都不对

35.关于对象操作流的描述正确的是?(

)A a) ObjectOutputStream流是将对象以Object类型写入到文件中 b) ObjectOutputStream流是将内容写入到Object对象中 c) ObjectInputStream流是读取Object对象里的内容

d) ObjectInputStream是从文件中读取一个对象出来,读出来是Object类型的,需要进行强制类型转换

36.ObjectOputStream类中的哪个方法可以将对象写入到文件中?(

)C a) write(Object obj) b) append(Object obj) c) writeObject(Object obj) d) objectWrite(Object obj)

37.下列选项中哪个不属于I/O流?(

)C a) FileWriter b) FileReader c) Properties d) PrintStream

38.下列说法不正确的是(

)D a) Properties 类表示了一个持久的属性集L b) Properties 可保存在流中或从流中加载L c) 属性列表中每个键及其对应值都是一个字符串L d) 以上说法都不对

39.以下代码运行后输出的结果是?(

)C public cla Test { public static void main(String[] args) throws IOException {

Properties prop = new Properties();

prop.setProperty(\"name\", \"张三\");

prop.setProperty(\"tel\", \"18912345678\");

Enumeration en = (Enumeration) prop.propertyNames();

while(en.hasMoreElements()) {

String key = en.nextElement();

String value = prop.getProperty(key);

System.out.print(value + \":\");

} } } a) b) c) d) name:tel tel:name 张三:18912345678: 18912345678:张三

40.关于Properties类中的load和store方法说法正确的是?(

)AB a) load方法从流中读取属性列表,键值对,加载到Properties对象中 b) store方法将Properties对象中的键值对,写入到流中

c) load方法将Properties (Properties)对象中的内容加载到文件中

d) 以上说法都不对

黑马程序员c语言教程:DML语言简介

黑马程序员c语言教程:Oracle概念

黑马程序员c语言教程:Oracle指令

黑马程序员c语言教程:Oracle概念

黑马程序员c语言教程:DML语言强化

黑马程序员c语言教程:Oracle指令

黑马程序员c语言教程:多表查询

黑马程序员c语言教程:SQL函数

黑马程序员自荐信

黑马程序员C语言教程:QSignalMapper的使用

《黑马程序员Java IO知识测试 C卷(材料).doc》
黑马程序员Java IO知识测试 C卷(材料)
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文