The Java Programming Language, 4th Edition. Chapter 20.0 [翻译]

[b]Chapter 20. The I/O Package[/b]
Java平台包含了很多包用来处理数据读入读出。这些包的用途各不相同。

java.io包将I/O视为"流"。 流就是有输入源和输出源的数据序列。这些I/O将程序员从底层的操作系统的的具体细节中解放出来,这样程序员就可以很轻松地通过文件或其他手段获得系统资源。多数的流(比如处理文件的)都支持某些基本接口和抽象类的方法。所有学习这些I/O包的方法先从基本接口和抽象类开始。

java.nio包和其子包将I/O视为"缓冲区"和"通道"。缓冲区用来保存数据(类似数组),可以用来读取或写入数据。"通道"代表的是具有执行I/O操作能力的个体之间的通信,这些个体包括:缓冲区、文件和套接字。nio中的n通常为认为代表"new"(其实这个包早于基于流的"io"包)。n其实是代表"不堵塞",因为基于通道的I/O和基于流的I/O一个关键的不同就是"通道"支持不堵塞的I/O操作,当然也支持堵塞的I/O操作。这种特性在在设计高吞吐的服务端程序的时候非常重要。

java.net包针对网络I/O提供了特殊的支持。基于套接字,它提供了基于流和基于通道的模型。

本章主要讲述java.io包的基于流的模型。简述java.nio包的一些功能,但是不堵塞I/Ojava.net的网络I/O是高级话题,超出了本书的范围。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值