黑马程序员------IO流总结笔记一
来源:互联网 发布:windows粘滞键 编辑:程序博客网 时间:2024/04/26 04:45
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
IO流继承关系图
IO概述
IO流是用来处理设备上数据的输入输出。
具体设备有:硬盘,内存,键盘录入等等。
IO流的具体分类:
1,根据处理的数据类型不同分为:字节流和字符流,字节流读取的最小单位是一个字节(1byte=8bit),而字符流一次可以读取一个字符(1char=2byte=16bit)
2,根据流向不同分为:输入流和输出流,注意:输入输出的参照对象是java程序
3,按照功能的不同分,分节点流和过滤流,节点流是直接从一个源读写数据的流(这个流没有经过包装和修饰),过滤流是在对节点流封装的基础上的一种流,FileInputStream是一个节点流,可以直接从文件读取数据,但是BufferedInputStream可以包装FileputStream,使得其有缓冲功能。
字符流的由来:
因为文件编码的不同,而有了对字符进行高效操作的字符流对象。
原理:其实就是基于字节流读取字节时,去查了指定的码表。
字节流和字符流的区别:
1,字节流读取的时候,读到一个字节就返回一个字节。
字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8码表中是3个字节)时。先去查指定的编码表,将查到的字符返回。
2,字节流可以处理多有类型数据,如图片,MP3,avi。
而字符流只能处理字符数据。
结论:只要是纯文本数据,就要优先考虑使用字符流。除此之外都使用字节流。
流分类的关系
IO体系所具备的基本功能就只有两个:读和写
1,字节流
InputStream(读),OutputStream(写)。
2字符流
Reader(读),Writer(写)。
定义体系中,这四个体系派生出来的子类后缀名都是体系父类名。而前缀名就是这个子类对象的功能。
补充说明:关于流向与读写的理解
就是读到底对应什么,其实流向中的输入输出时针对java程序而言的,可以这样理解,程序是在内存中运行的,那么就可以相对于内存而言,那么输入就是数据进入内存,从硬盘到内存的数据当然是读了。而输出就是数据离开内存,从内存到硬盘当然就是写操作啦。
这样很容易的就把读和输入联系起来,把写和输出联系起来。记住:输入输出的主体是程序,而程序是在内存中运行的,这样就很好理解了。
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
- 黑马程序员------IO流总结笔记一
- 黑马程序员 IO流学习笔记一
- 黑马程序员------IO流总结笔记二
- 黑马程序员-----IO流总结笔记三
- 黑马程序员 IO笔记总结
- 黑马程序员——IO流总结(一)
- 黑马程序员-----十一、java基础IO流技术总结一
- 黑马程序员---IO流一
- 黑马程序员 IO流 一
- 黑马程序员 Java IO总结一
- 黑马程序员 知识点总结-Java IO(一)
- 黑马程序员------IO操作总结(一)
- 黑马程序员----io流总结
- 黑马程序员------------------io流总结
- 黑马程序员 IO流总结
- 黑马程序员 IO流总结
- 黑马程序员-------io流总结
- 黑马程序员---IO流总结
- 黑马程序员-------集合框架总结笔记三
- C++ 标准容器 vector 语法练习
- GIS开发人员需要掌握的知识和技能
- linux 获取日期及系统时间
- linux iptables
- 黑马程序员------IO流总结笔记一
- kindle的下载电子书的资源网站
- java笔试题常见知识总结
- VMware下安装Snow Leopard 10.6
- 黑马程序员------IO流总结笔记二
- 第三届信息技术大赛Java组B卷答案
- One Line Command to Install Adobe Flash Player in Ubuntu
- Android 开发常用代码片段
- jsp、servlet、xml、线程、JDBC笔试总结