接口 中的所有方法都是方法 抽象
使用接口实现多继承
类型的装换###
数据成员就变成了static 和 final
food 和 snow 都是可以吃的
可以同时实现多个接口
接口与接口之间也可以有继承关系
类型转换###
向上转换###
显式转换##
显示转换
超类的引用不能访问子类的方法
方法的查找##
实例方法查找
从创建对象的时候向上查找
这里和C++不太一样
banding#
早绑定:
晚绑定:动态绑定
动态绑定
二次分发技术###
构造方法与多态性:
先超类,后组件,最后自己
构造方法中调用多态方法
输入输出流##
异常处理简介
异常处理得概念
错误&异常
预定义常见得异常
‘
异常得处理##
检查型的异常
抛出异常得例子
生成异常对象3种方式
要传一个字符串进去描述发生了什么
输入输出流###
面向字符的抽象流类
面向字节的是面向非文本数据的数据
尽量存成2进制的数据面向字节
标准输入输出流对象
标准输入输出重定向
重定向
写文本文件###
Filerwirter 对象的实例
捕获和处理IO异常
用BufferedWirter换行
套一个BUfferedWriter 可以提供缓冲提高效率
用newLine可以提供正确的换行
读文本文件##
FileReader类 从文本文件中读取字符
套一个缓冲流
读一行如果不空就接着读
返回某个字符的int类型的整数
例子:文件的复制##
单入口
写二进制文件##
讲三个数据写入数据文件
三次嵌套
按类型缓冲写数据
readbyte 是补符号位
readunsigedbyte 是零扩展
从二进制文件中读取数据
又是三次嵌套
读完了会抛出一个异常
读单个字节,写单个字节
低位8位
一个字节一个字节的复制
EOFEception
两个异常
Flie类##
管理文件的操作
改进
用File判断文件是否存在
处理压缩文件##
这里几乎嵌套了四次流
FileINputStream 面向字节的流
GZIPInputStream 解压
InputStreamReader 桥梁
BufferedReader 提供了readLine
第二个不关文本文件的事直接按字节复制就好
ZIP格式更复杂一些##
重要的一行
解压缩ZIP
解压缩回复路径
有没有斜杠的统一
是目录要创建,不存在要创建
![](http://images2017.cnblogs.com/blog/1054453/201709/1054453-
20170908160523241-1499383048.png)
对象序列化##
对象的读写
将对象村办
s.flush 清空缓冲区
readObject 方法读取一个对象
空接口。。
阻止写入文件
ObjectOutputStream 嵌套FileOutputstream
对象输出流
Externalizable 接口
实现两个方法
writeExternal() readExternal()
写和读的定制
随机文件的读写##
RandowmAccessFile