Io流总结
1. io流主要是用来处理设备设备之间的数据传输,java对数据操作都是通过流的方式
2. 缓冲思想
字节流一次读写一个字节的速度比较慢,在处理数据比较大的情况下,相当缓慢,所以引出了一个缓冲思想,具体是定义一个数组,将每次读到的字节方法放到数组中,然后通过数组进行读写,这样会比较快,我们通常定义数组的长度是1024的倍数,API建议是1024*8
3. 流基本的分为字节流和字符流
字节流主要是针对文件的字节进行处理,,通用与所有文件的读写,
字符流主要是用来进行文本文档之间的操作,就是在字节流的基础上,加上码表对字节进行处理,字符流在底层会定义一个数组,大小约为2048,因为纯文本文档通常比较小,所以字符流的缓冲思想对时间的提升反倒是不大
4. 异常处理
异常处理通常分为两类,一类是抓住方法,一类是抛出方法.jvm默认的处理方式就是在控制台打印异常,并终止代码运行.
a. 抓住方法
Try+可能出现问题的代码catch+可能出现的异常问题…finally+必须要运行的代码,通常为关闭流的动作,jdk1.7以后加入流的自动关闭功能,具体是
Try(开流的操作){可能出现问题的代码}catch{可能出现的问题}
1.7以后因为流实现了自动关闭的功能,当catch补货异常问题时,try小括号里面的就会自动进行关闭功能
b.抛出方法
抛出方法是将可能出现的问题抛出去,告知调用者会出现的问题,在安卓开发中一般不建议使用,因为除了我们自己没有别人会动我们的代码
5. IO流的基本分类
1. 输出流,基类是outputstream,继承的类主要是ByteArrayOutputStream, FileOutputStream,FilterOutputStream,ObjectOutputStream,OutputStream,PipedOutputStream主要就是fileoutputstream
2. IO输入流,基类是inputstream,主要是fileinputstream
6. 装饰设计模式
装饰设计模式就是对已有的类进行包装,主要是扩展已有类的功能,使这个类的功能更加强大,并同时保留原有类的方法,装饰类的好处就是类与类之间的耦合性不强,被修饰的类与装饰类的变化无关,最主要就是对原有类的功能进行拓展
|
|