黑马程序员



博客:------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

java中的IO

一:IO概述:
操作数据的工具
IO流,即数据流,数据像水流一样通过IO工具进行传输。
程序  <IO>   硬盘
绝对路径与相对路径



二:异常(理解)
(1)就是程序的非正常情况。
(2)异常的继承体系结构:
Throwable:
|--Error 严重的问题,不需要处理的。
|--Exception 非RuntimeException必须进行处理。两种方案,点击鼠标即可。
|--RuntimeException 运行时期异常,需要修正代码。
(3)jvm的默认处理方式:
默认情况下,jvm会采用默认处理方案:
把异常的全路径名称,原因,及位置等信息显示出来。
注意:
如果是jvm的默认处理方式,那么,它会在出问题的地方结束。
(4)我们自己的处理方案:


三:递归(理解)
(1)方法定义中调用方法本身的现象。
(2)递归注意事项:
A:要有出口,否则就是死递归。
B:次数不能太多,否则内存溢出。


特殊事项:构造方法不能递归定义。
(3)案例:(面试可能见到)
A:递归求阶乘
B:递归求兔子问题(斐波那契数列)
C:递归遍历目录(带内容的目录)
D:递归删除目录(带内容的目录)

四:IO(掌握)
(1)IO就是在不同设备间传递数据。
(2)IO流分类:
A:流向
输入流 读取数据
输出流 写出数据
B:数据类型
字节流
字节输入流 InputStream
字节输出流 OutputStream
字符流
字符输入流 Reader
字符输出流 Writer


注意:
A:四个顶层类都是抽象类。
B:一般每个体系的流都是以基类作为后缀名。
什么时候使用谁?
如果文件能够通过记事本打开并读懂,就用字符流。
其他的全部使用字节流。

五:

字节流(掌握)
InputStream
|--FileInputStream
|--BufferedInputStream
OutputStream
|--FileOutputStream
|--BufferedOutputSteam


六:字符流(掌握)
Reader
|--InputStreamReader
|--FileReader
|--BufferedReader
Writer
|--OutputStreamWriter 
|--FileWriter
|--BufferedWriter


针对文本文件这样的数据操作。
基本的读取和基本的写入,单独使用也是要求掌握的。

七:

Properties(理解)
(1)是Hashtable的子类。内置了IO流的操作。
(2)特有功能:
A:添加
Object setProperty(String key, String value) 
B:获取
String getProperty(String key)  
String getProperty(String key, String defaultValue)  
Set<String> stringPropertyNames() 相当于以前的keySet()
(3)和IO流结合的功能:
A:list 把集合中的数据写到文本文件。只能使用打印流。
B:load 把文本文件中的数据加载到集合。
C:store 把集合中的数据写到文本文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值