早期程序受CPU影响较大,随着CPU处理能力的提升,现在的程序性能更多受I/O操作的影响, 其实各大操作系统对I/O操作做了很多性能的改进,但是JVM为了保证Java程序在各种平台上运行效果一致,把各种操作系统对I/O性能的提升给屏蔽了, 使得Java在I/O领域一直处于劣势;学习这项技能说实话是有些难度的,为此动力节点特别录制了NIO系列教程,想进阶的朋友,免费下载学习。
Java虽然有一套完备的I/O类,但是需要处理大量数据时,却可能对执行效率造成致命伤害,传统的I/O也不具备当今大多数操作系统具备的常用功能,如文件锁定,非阻塞I/O,内存映射等, 所以Java在JDK1.4中引用了NIO,可以最大限度的满足Java程序I/O的需求;
在NIO中有三大核心组件: Channel, Buffer, Selector,传统的IO面向流的,每次可以从流中读取一个或多个字节,只能向后读取,不能向前移动,NIO是面向缓冲区的,把数据读到一个缓冲区中,可以在缓冲区中向前/向后移动,增加了程序的灵活性。在NIO中,所有的数组都需要通过Channel传输,通道可以直接将一块数据映射到内存中。Channel是双向的,不仅可以读取数据, 还能保存数据,程序不能直接读写Channel通道,Channel只与Buffer缓冲区交互;
本套视频与大家深入探讨了NIO的新特性, 并告诉大家如何使用这些特性来提升你所写代码的执行效率,如何才能充分挖掘新的I/O特性所具备的各种潜能,对程序员所面临的有代表性的I/O问题也进行剖析,本课程采用PDT4J教学法,通过案例让大家学会如何使用这些功能来解决现实工作中常常遇到的I/O问题;
适应人群:至少学完了Java SE,对NIO编程感兴趣,或者是有工作经验的人群。
课程大纲目录
•001.NIO课程导读
•002.程序读取数据模型
•003.NIO与传统IO的区别
•004.缓冲区的常用属性
•005.Buffer常用的API
•006.演示Buffer的基本操作
•007.缓冲区的批量传输
•008.缓冲区创建的两种方式
•009.缓冲区的复制与分隔
•010.直接字节缓冲区
•011.hannel概述
•012.Scatter与Gather
•013.FileChannel内存映射文件
•014.FileChannel双向读写
•015.FileChannel读写文件时缓冲区固定大小
由于篇幅原因,这里的课程只展现了一部分,大家可以关注动力节点官网的Java视频教程专栏查看全部课程。后续还有更多的新课程等待发布,以上就是动力节点小编介绍的"进阶版本的Java nio视频教程",希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为您务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习