Java 习题七

Java 习题七
一 、填空题

  1. Java 中的 I/O 流 ,按照传输数据不同, 可分为 和

  2. 在 Buffer 与 Channel 交互时 ,数据会从 读取到 中,或从 Buffer 写
    入到 Channel 中 。

  3. 用于将字节流转换为字符流的是 和

  4. NIO 主要有三大核心部分: 、 和

  5. Java 中提供了一个类 ,它不但具有读写文件的功能,而且可以随机地
    从文 件的任何位置开始执行读写数据的操作 。
    二、判断题
    1 、如果一个 File 表示目录下有文件或者子目录,调用 delete( ) 方法
    . 也可以将其删除。 ()
    2 、 对象序列化是指将一个 Java 对象转换成一个 I/O 流中字节序列的
    过程。( )
    3 、 Channel 是一个接口对象, 它类似于传统的流对象。( )
    4 、 InputStream 类的 closeO 方法是用于关闭流并且释放流所占的系 统资源。( )
    5 、 BufferedlnputStream 和 BufferedOutputStream 不是字节缓冲流 。
    ( )
    三 、选择题
    1, 下面选项中, 哪些是标准输入输出流? ( 多选 )( )
    A. System. In B. System. Out C. InputStream D. OutputStream

  6. File 类中以字符串形式返回文件绝对路径的方法是哪一项? ( )

A. getParentO B. getName()
C. getAbsolutePath() D. getPathO
3. 以下创建 RandomAccessFile 类实例对象的代码 , 哪些是正确的?(多 选)( )
A. new RandomAccessFile(new File(“D:\itcast\dirl\test. java”) , “rw”);
B. new RandomAccessFile(“D:\itcast\dirl\test. java” , “r”);
C. new RandomAccessFile(“D:\itcast\dirl\test. java”);
D. new RandomAccessFileC"Ds\itcast\dirl\test. java" , “wr”);
4. 以下选项中, 哪个流中使用了缓冲区技术?( )
A. BuffereOutputStream B. FilelnputStream
C. DataOutputStream D. FileReader
5. 以下选项中, 关于 Java NI。 中 Buffer 类的常用说法正确的是哪一项? ( )
A. clearO 方法会清除缓冲区数据 , 并将 position 设置为 0,limit 设置为 capacity
B. flipO 方法先将 limit 设置为当前 position 位置,然后再将 position 设置为 。
C. markO 方法用于设置 Buffer 的标记(mark),只能在 0 与 limit 之间做标记

D. rewind()方法将 position 设置为 0,并设置 mark 标记
四、 简答题

  1. 简述 I/O 流的概念 。
  2. 简述字节流、字符流的区别 。
  3. 简要说明什么是 NI。 。
    五、 编程题
  4. 编写一个程序,分别使用字节流和字符流拷贝一个文本文件。要求如下:
    (1) 使用 FilelnputStream,FileOutputStream 和 FileReader、 FileWriter 分别
    进行拷贝 。
    (2) 使用字节流拷贝时,定义一个 1024 长度的字节数组作为缓冲区,使用字 符流拷贝, 使用 BufferedReader 和 Buffered Writer 包装流进行包装 。
  5. 某人在玩游戏的时候输入密码 123456 后成功进入游戏(输错 5 次则被强 行退出), 要求用程序实现密码验证的过程。要求如下:
    (1) 使用 Sysytem. in 包装为字符流读取键盘输入 。
    (2) BufferedReader 对字符流进行包装。 调用 BufferedReader 的 readLine() 方法每次 读取一行 。
    (3) 在 for 循环中判断输入的密码是否为 123456,如果是则打印“恭喜你进入 游戏” ,并 跳出循环, 否则继续循环读取键盘输入 。
    (4) 当循环完毕,密码还不正确,则打印“密码错误,结束游戏”,并调用 System. exit(0) 方法结束程序 。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风,风,风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值