对于IO流的个人理解
2018-06-18 01:55:17来源:未知 阅读 ()
Samuel
2018-04-21
在这之前,我给你们构造这样一个生活用水的场景:
人们日常生活需要生活用水,那么,水从哪里来呢?
大家都学过初中的物理常识,水在地表,通过蒸发,变成水蒸气去到空中,在空中遇冷变成雨,掉落到地表,如此循环......而我们的自来水就是从其中一个阶段抽取出来,作为生活用水。简单的说就是,我们的生活用水需要一个很大的水工厂,水工厂通过各种大小水管将生活用水运输到我们的社区,我们开一下水龙头就可以用瓢子装水用了。想起来我以前看过的港片,如果刚好你的社区生活用水缺乏,你只能用盘,桶或者其他器皿装水了,然后抬回家去。
我要说什么呢?这跟IO流有什么关系呢?
有,我要说的就是IO流。现在我们来想像一下:
如果我们把水当做文件,把水工厂当做file类,将运输用的大小水管当做inputstream,outputstream,reader,writer,再把瓢子,盘,水桶等容器当做数组,char等。file类是可以放很多很多的水的大仓库,通过inputstream,outputstream,reader,writer这四个节点流(=水管),将水运输到社区,最后,用不同容器(=数组,char)将水装出来用。
这样是不是很好理解地IO流体系的概念了?
如果还有疑问,我就再说几句,你问我为什么要用这个例子作比喻?因为这跟我们的文件处理很相似,在生活中,如果你要用水,会不会去遥远的自来水工厂取水?好吧,你说你家附近就有一家自来水工厂,不远。但是你确定你能直接进去取水用?不嫌麻烦?就算你不想麻烦,但是人家自来水供应商会给你直接接触整个工厂的自来水吗?答案是不会,因为人家也是有严格地按照国家标准执行的。万一你靠近自来水工厂的自来水,投毒进去谁负责任啊。另外一个,为了管理,为了人们的用水方便,只能是将水通过一个大水管到各大社区,然后社区各家各户接一根小的水管到家。
同样的,file类也是一样的,创建了一个file类的对象后,你不可能直接对file的对象进行操作。只能通过inputstream,outputstream,reader,writer这四个水管将文件包装运输,人们用char或者数组等容器从水管中读取数据。
好了,关于IO流的理解就说到这里,若有不对之处,欢迎指正。本文仅供个人学习用,欢迎转载。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Java的前世今生 2020-05-25
- Java-IO流学习 2020-05-18
- java8 新特性Stream流的应用 2020-05-16
- Java的IO流 2020-05-14
- eclipse 转idea 个人配置设置 2020-05-06
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash