java i o是什么流_Java I/O流的总结
I/O的类结构图
I/O的分类
根据处理的数据类型分为:字节流和字符流。
根据数据流向分为:输入流和输出流。
流又可分为节点流和处理流。
节点流
直接与数据源相连
处理流
与节点流一起使用,在节点流的基础上,再嵌套一层。提高文件的读取效率。
输入流
InputStream
作用是以字节的形式读取数据源产生的数据。
Reader
作用是以字符的形式读取数据源产生的数据。
输出流
OutputStream
作用是以字节的形式在接收端写数据。
Writer
作用是以字符的形式在接收端写数据。
常用的流
缓冲流
作用:缓冲流提供缓冲区,先把数据写入缓冲区,当缓冲区写满之后,再把缓冲区的内容写到文件中去。这样会提高读取效率。
对象流
作用:用于写入/读取对象的信息,使对象持久化。
使用的注意事项:
1.如果想将一个对象写入到磁盘中,那么对象所属的类必须要进行序列化,实现Serializable 接口,Serializable接口没有任何方法 ,是一个标记接口
2.如果对象所属的类的成员变量发生改变,你在读取原来的对象是就会报错,如果想要解决报错,保证serialVersionUID是唯一。
3.如果你不想将某些信息存入到磁盘 就可以同过transient关键字修饰成员变量
4.如果一个类中引用了另外的一个类,那么另外的这个类也要实现Serializable接口。
管道流
作用:可以进行两个线程之间的通信。一个线程作为管道输出流,另一个作为管道输入流。
转换流
作用:用于字节流和字符流的转化。
InputStreamReader:将字节流转换为字符流
OutputStreamWriter:将字符流转换为字节流
java i o是什么流_Java I/O流的总结相关推荐
- java文件与流_Java文件和流深入
1.什么是数据流? 数据流是指所有的数据通信通道.有两类流,InputStream and OutputStream,Java中每一种流的基本功能依赖于它们.InputStream用于read,Out ...
- java 中的流_Java中的流(IO
Java中的流(IO流. java.io包中定义了多个流类型(类或抽象类)来实现 输入 / 输出功能,可以从不同的角度对其进行分类: 按单位可分为: 字节流 (一个字节一个字节的读取) ...
- java io 转换流_Java编程IO流中的转换流
对于IO流中的转换流,顾名思义,就是将字符流转换成字节流或者是将字节流转换成字符流的对象. 那么有时候我们得到的是一个字符流,但是我们又需要进行一些计算之类的,或者我们得到的是一个字节流,但是我们又需 ...
- java i o是什么流_Java I/O 流,输入流、输出流
Java中的流,可以从不同的角度进行分类. 按照数据流的方向不同可以分为:输入流和输出流. 按照处理数据单位不同可以分为:字节流和字符流. 按照实现功能不同可以分为:节点流和处理流. 输出流: 输入流 ...
- java文件与流_Java文件与流
文件 文件管理通过java.io包下.file类 作用: 1.文件属性 2.文件检查 3.文件删除 4.不包含对其文件内容的处理 File类的构造 语法: File f =new File(Strin ...
- java装饰模式模拟流_Java 装饰模式 io流
在Java IO流的API中,大量的使用了装饰模式. 现在笔者来阐述一下装饰模式. 装饰模式的角色: --抽象构件角色(Component): 给出一个抽象接口,以规范准备接收附加责任的对象. --具 ...
- java api限流_Java 9:流API的增强
java api限流 Java 9向Stream接口添加了4种新方法: 1. dropWhile dropWhile方法类似于skip方法,但使用Predicate而不是固定的整数值. 当Predic ...
- java i o是什么流_Java I/O流介绍
Java I/O流分为输入流输出流两大部分,任何自InputStream(字节输入流)和Reader(字符输入流)派生而来的类都含有read()基本方法,用来读取单个字节或一组字节数组.任何自Outp ...
- java 网络通讯用什么流_Java中打印流,网络通信协议,TCP通信的基础介绍
1-1.打印流 java.io.PrintStream:打印流 PrintStream 为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式. PrintStream特点: 1).只负责数据 ...
最新文章
- (转) 干货 | 图解LSTM神经网络架构及其11种变体(附论文)
- 深度学习几种典型架构
- HTTPS协议原理分析
- 16道嵌入式C语言面试题(经典) 预处理器(Preprocessor)
- 对IP专用(私有)地址的理解!
- Unity中Time.deltaTime的含义及其应用
- jQuery学习总结06-插件开发
- inx函数python_Python数据分析入门
- 深度学习——Optimizer算法学习笔记
- Web API-基本认知
- spring5.0学习笔记8
- JavaScript从入门到精通(全)
- 微信小程序显示列表数据
- [docker]九、compose是什么?有什么用?以及用compose启动web、redis和wordpress
- 机器人辅助的符文天赋_LOL机器人辅助带什么天赋_S9机器人辅助怎么玩_3DM网游...
- 常用数字、模拟量输出传感器原理介绍
- 计算机系统安全之利用操作系统自带命令杀毒
- 机器学习(四):剪枝技术(基础篇)
- Redis列表与集合
- 使用el-dialog时,报错“Unknown custom element:<el-dialog> did you register the component correctly?...make
热门文章
- C++设计模式之一 工厂模式(简单工厂、工厂和抽象工厂)
- 自己动手写TCC7901的GPIO驱动
- 内存spd规范_C语言内存泄露很严重,如何应对?
- 移动app测试的多样性_快速搞定APP移动端自动化测试
- 【转】ADO.Net之SqlConnection、 Sqlcommand的应用学习心得(思维导图,知识解析,案例分析)
- 【转】五大方法,彻底永久关闭win10自动更新的方法【已验证有效】
- 第二十二节: 以SQLServer为例介绍数据库自有的锁机制(共享锁、更新锁、排它锁等)和事务隔离级别 :
- 什么是指利用计算机和现代,现代计算机一般指什么计算机?
- oracle 采购 日历,Oracle日历程序
- Python 数据分析三剑客之 Matplotlib(十):3D 图的绘制