Java初学者入门——IO包的学习引导

2016-02-19 14:01 9 1 收藏

下面图老师小编要向大家介绍下Java初学者入门——IO包的学习引导,看起来复杂实则是简单的,掌握好技巧就OK,喜欢就赶紧收藏起来吧!

【 tulaoshi.com - 编程语言 】


  什么是IO
  
  IO(Input/Output)是计算机输出/输出的接口。Java的核心库java.io提供了全面的IO接口,包括:文件读写,标准设备输出等等。Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。此外,Java也对块传输提供支持,在核心库java.nio中采用的便是块IO。关于NIO我们在后面还有专门的讨论。
  
  流IO的好处是简单易用,缺点是效率较低。块IO效率很高,但编程比较复杂。
  
  Java IO模型
  
  Java的IO模型设计非常优秀,它使用Decorator模式,按功能划分Stream,您可以动态装配这些Stream,以便获得您需要的功能。例如,您需要一个具有缓冲的文件输入流,则应当组合使用FileInputStream和BufferedInputStream。
  
  Java的IO体系分Input/Output和Reader/Writer两类,区别在于Reader/Writer在读写文本时能自动转换内码。基本上,所有的IO类都是配对的,即有XxxInput就有一个对应的XxxOutput。
  
  Java IO教程
  
  假如您对Decorator模式非常了解,就能轻易地看出Java的IO类结构:根接口是InputStream/OutputStream,充当数据源的IO类有FileInputStream/FileOutputStream,ByteArrayInputStream/ByteArrayOutputStream等,充当装饰功能的IO类有BufferedInputStream/BufferedOutputStream,DataInputStream/DataOutputStream等,它们都是继续装饰接口FilterInputStream/FilterOutputStream。使用IO时,首先创建一个数据源IO,然后根据需要的功能创建装饰类IO,其构造函数的参数为已创建的数据源IO。我们以创建一个具有缓冲的文件输入流为例,假定需要从磁盘读取文件“C:log.txt”:
  
  // 创建一个FileInputStream:
  
  FileInputStream fileInput = new FileInputStream("C:log.txt");
  
  // 创建一个BufferedInputStream:
  
  BufferedInputStream bufferedInput = new BufferedInputStream(fileInput);
  
  // 现在得到的bufferedInput即是具有缓冲的文件输入流
  
  或者进一步简写如下:
  
  InputStream input = new BufferedInputStream(
  
  ew FileInputStream("C:log.txt"));
  
  // 现在得到的input即是具有缓冲的文件输入流
  
  在您对Java的IO有了总体了解后,我们推荐您看看教程IntrodUCtion to Java I/O和I/O: Reading and Writing。
  
  Java NIO编程
  
  NIO提供了对块IO的支持,使用块IO的好处是效率更高,而且Java的NIO将直接调用操作系统提供的许多高级IO接口,支持块传输,读写锁定,异步IO等功能,效率非常高。NIO的编程模型是通道和缓冲区,推荐您阅读Getting started with new I/O(中文)。

来源:http://www.tulaoshi.com/n/20160219/1605961.html

延伸阅读
标签: Web开发
前几天有个人退群了。起因很简单,他问了一个问题,没人回答,于是说要退群,后来我看到了,给了个链接,说这个问题已经说过好多遍了,于是他就退了。 打开QQ的群列表,我所在的技术群有5个,不包括原来参加过又退了的。另外,还去几个论坛里看。看得多了,忽然觉得有几句话想说给初学者。 97年,我开始接触网络,然后开始做网...
基本概念 1.OOP中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提...
初学化妆问题 其实,对于初学化妆的人来说,因为缺乏基本的经验,所以可以在别人化妆的时候,自己在一旁观看。在观看的时候,一定要充分发挥大脑的记忆作用,这样在观摩别人化妆几次之后,会在心里留下一个大概的步骤与印象,努力将它们补充全面。 然后,可以先用自己进行实验,千万不要觉得这样做是非常愚蠢的,只要可以...
标签: 化妆
对于刚开始学化妆的妹纸们,如果有个化妆教程一步一步对着画那真是太好了,初学者化妆教程,分享给刚学化妆的妹纸们。 初学者化妆教程 初学者怎么化妆 步骤: 1、首先在上底妆前,还是要进行基础的护肤步骤,护肤之后化妆才不会对皮肤造成大的伤害。在涂好BB爽/粉底霜后,首先在黑眼圈的地方点涂橙色系遮瑕膏,橙色对于黑...
标签: Web开发
原文地址:http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery 最好有javascript以及dom方面的知识,这对于理解其中的代码很有帮助,不了解也不要紧,因为代码本身就很简洁。 这篇指南包括了 hello jquery、基本的selector、event、ajax、FX、以及一些插件。 tips:当你看到这篇文章时最好在第一时间看完,不要放到收藏夹里...

经验教程

334

收藏

34
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部