io流,设计者模式

IO流

概述

作用:传输数据

分类:

方式1:按照流向分类
	输入流
	输出流
方式2:按照传输的数据分类
	字节流:传输的数据以字节(byte)为单位
	字符流:传输的数据以字符(char)为单位
方式3:按功能分类
	包装流:对传输的数据进行加工
	节点流:直接从数据源到程序或从程序到指定位置

字节流

体系
InputStream:字节输入流
	方法:
		int read():一次读取一个字节,返回值为读取到的字节.当返回值为-1时表示读取结束
		int read(byte b[]):一次读取一组字节,读取到数组b中,返回值为本次读取到的长度.将读取到的数据从第0个位置开始存储
		int read(byte b[], int off, int len):一次读取一组字节,读取到数组b中,返回值为本次读取到的长度,将读取到的数据从第off个位置开始存储,存储len个
		void close():关流
		
OutputStream:字节输出流
	方法:
		void write(int b):一次写入一个字节
		void write(byte b[]):一次写入一组字节
		void write(byte b[], int off, int len):一次写入一组字节,从off位置开始,写入len个
		void flush():冲刷
		void close():关流
		
文件流
	作用:将数据写入到文件中或从文件中读取数据
	FileInputStream:从文件中读取数据
	FileOutputStream:将数据写入到文件中
		注意:
			FileOutputStream(文件地址):
				当文件不存在则创建一级文件,如果文件存在,则删除文件,在创建新文件
			FileOutputStream(文件地址,是否追加)
				当文件不存在则创建一级文件,当二参为true如果文件存在,在原有基础上追加
内存流
	作用:将数据写入到内存中,或从内存中读取数据
	注意:默认内存大小32b,自动扩容
	ByteArrayInputStream
	ByteArrayOutputStream
		toByteArray():获取内存流中的数据
缓冲流
	作用:提高代码的读写效率
	注意:缓冲区默认大写8kb
	BufferedInputStream
	BufferedOutputStream
对象流
	作用:读写对象
	ObjectInputStream
		Object readObject()
	ObjectOutnputStream
		void writeObject(Object obj);
	注意:
		1,读写的对象所属的类必须实现序列化接口(Serializable)
		2,静态属性不参与序列化
		3,瞬时属性不参与序列化(使用transient修饰的属性)

字符流(下周一学)

路径

相对路劲:相对于当前文件的位置

.:当前路径
..:上一级路径
\:windows系统下的路径分割符
相对于当前项目下

绝对路径:从盘符的根目录开始书写

经验

1,你会那些设计模式?
	单例
	工厂
	生产者与消费者
	监听者默认
	
2,是否使用过装饰者模式?
	使用过,所有的包装流都是装饰者模式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值