NIO和IO的区别_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > NIO和IO的区别

NIO和IO的区别

 2013/10/15 18:46:53  flychao88  程序员俱乐部  我要评论(0)
  • 摘要:JavaNIO编程提供了对块IO的支持,使用块IO的好处是效率更高1.基本概念IO是主存和外部设备(硬盘、终端和网络等)拷贝数据的过程。IO是操作系统的底层功能实现,底层通过I/O指令进行完成。所有语言运行时系统提供执行I/O较高级别的工具。(c的printfscanf,java的面向对象封装)2.Java标准io回顾Java标准IO类库是io面向对象的一种抽象。基于本地方法的底层实现,我们无须关注底层实现。InputStream\OutputStream(字节流):一次传送一个字节
  • 标签:区别

Java?NIO编程?提供了对块IO的支持,使用块IO的好处是效率更高?

1.?? 基本 概念?

IO 是主存和外部设备 ( 硬盘、终端和网络等 ) 拷贝数据的过程。 IO 是操作系统的底层功能实现,底层通过 I/O 指令进行完成。?

所有语言运行时系统提供执行?I/O?较高级别的工具。 (c?的?printf?scanf,java?的面向对象封装 )?

2.??? Java 标准 io 回顾?

Java 标准 IO 类库是 io 面向对象的一种抽象。基于本地方法的底层实现,我们无须关注底层实现。 InputStream\OutputStream( 字节流 ) :一次传送一个字节。 Reader\Writer( 字符流 ) :一次一个字符。?
3.??? nio 简介?
nio 是 java New IO 的简称,在 jdk1.4 里提供的新 api 。 Sun 官方标榜的特性如下:?

–???? 为所有的原始类型提供 (Buffer) 缓存支持。?
–???? 字符集编码解码解决方案。?
–???? Channel :一个新的原始 I/O 抽象。?
–???? 支持锁和内存映射文件的文件访问接口。?
–???? 提供多路 (non-bloking) 非阻塞式的高伸缩性网络 I/O 。?
本文将围绕这几个特性进行学习和介绍。?

4.?? Buffer&Chanel?

Channel 和 buffer 是 NIO 是两个最基本的数据类型抽象。?
Buffer:?

–??????? 是一块连续的内存块。?
–??????? 是 NIO 数据读或写的中转地。?
Channel:?
–??????? 数据的源头或者数据的目的地?
–??????? 用于向 buffer 提供数据或者读取 buffer 数据 ,buffer 对象的唯一接口。?

–???????? 异步 I/O 支持?

上一篇: Servlet的工作原理及其生命周期 下一篇: 没有下一篇了!
发表评论
用户名: 匿名