当前位置: 首页 > Java培训 > JAVA开发图书 > 《java NIO 中文版》经典pdf下载
《java NIO 中文版》经典pdf下载 时间:2018-02-01     来源:java经典书籍

java NIO深入探讨了1.4版的I/O新特性,并告诉您如何使用这些特性来极大地提升您所写的Java代码的执行效率。这本小册子就程序员所面临的有代表性的I/O问题作了详尽阐述,并讲解了如何才能充分利用新的I/O特性所提供的各种潜能。您将通过实例学会如何使用这些工具来解决现实工作中常常遇到的I/O问题,并了解这些新特性如何对响应速率、可伸缩性和可靠性产生直接影响。

NIO API是对1.3版I/O特性的补充而非取代,因此,何时使用新的API,何时老的1.3版I/O API更适合特定应用,也是您将学习的内容。

java NIO 中文版

下载地址:https://pan.baidu.com/s/1ggj1rNH

描述编辑定义作为数据容器的缓冲区,并提供其他 NIO 包的概述。NIO API 的集中抽象为:缓冲区,它们是数据容器;字符集及其相关解码器 和编码器,它们在字节和 Unicode字符之间进行转换;各种类型的通道,它们表示到能够执行 IO 操作的实体的连接;以及选择器 和选择键,它们与可选择信道 一起定义了多路的、无阻塞的I/O 设施。java.nio 包定义了缓冲区类,这些类用于所有 NIO API。java.nio.charset包中定义了字符集API,java.nio.channels包中定义了信道和选择器 API。每个子包都具有自己的服务提供程序接口(SPI) 子包,SPI 子包的内容可用于扩展平台的默认实现或构造替代实现。缓冲区描述Buffer 位置,界限和容量;清除,反转,重绕和标记/重置ByteBuffer Get/put,压缩,查看;分配,包装MappedByteBuffer 映射到文件的字节缓冲区CharBuffer Get/put,压缩;分配,包装DoubleBuffer ' 'FloatBuffer ' 'IntBuffer ' 'LongBuffer ' 'ShortBuffer ' 'ByteOrder 字节顺序的类型安全的枚举

通道编辑Channel是一个对象,可以通过它读取和写入数据。拿 NIO 与原来的 I/O 做个比较,通道就像是流,而且他们面向缓冲区的。正如前面提到的,所有数据都通过 Buffer 对象来处理。您永远不会将字节直接写入通道中,相反,您是将数据写入包含一个或者多个字节的缓冲区。同样,您不会直接从通道中读取字节,而是将数据从通道读入缓冲区,再从缓冲区获取这个字节。通道与流的不同之处在于通道是双向的。而流只是在一个方向上移动(一个流必须是 InputStream 或者 OutputStream 的子类), 而 通道 可以用于读、写或者同时用于读写。因为它们是双向的,所以通道可以比流更好地反映底层操作系统的真实情况。特别是在 UNIX 模型中,底层操作系统通道是双向的。

缓冲区编辑是一个固定数据量的指定基本类型的数据容器。除内容之外,缓冲区还具有位置 和界限,其中位置是要读写的下一个元素的索引,界限是第一个应该读写的元素的索引。基本 Buffer 类定义了这些属性以及清除、反转 和重绕 方法,用以标记 当前位置,以及将当前位置重置 为前一个标记处。每个非布尔基本类型都有一个缓冲区类。每个类定义了一系列用于将数据移出或移入缓冲区的 get 和 put 方法,用于压缩、复制 和切片 缓冲区的方法,以及用于分的异类或同类二进制数据序列),访问要么是以 big-endian字节顺序进行,要么是以 little-endian 字节顺序进行。

判断编辑由于客户端断开连接时,服务器端SocketChannel不会立即自动改变连接状态,其仍然可以read()。所以通常以read()返回值进行判断。当read()返回为-1时即判断该连接断开。即当channel读到末尾后仍然没有数据发送,服务器即断开连接。

前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2024 北京华清远见科技发展有限公司

Android培训

版权所有 ,京ICP备16055225号-5,京公海网安备11010802025203号