多态:
1.多态同一个行为具有多个不同表现形式或形态的能力
2.多态是同一个接口,使用不同的实例而执行不同操作
3.多态就是同一件事件发生在不同的对象上产生不同的效果
没有继承就没有多态 多态必须在继承情况下才能使用
作用:消除耦合度 可替换性 可扩充性 接口性 灵活性 简化性
多态存在的三个必要条件:
继承 重写 父类引用指向子类对象
向上转型:父类的引用指向子类对象;自动进行类型补全
是小类型对大类型的转换
向下转型:将一个指向子类对象的父类引用赋给一个子类的作用(但存在风险,溢出)
instance of
类型判断
异常:
是阻止当前方法或作用域继续执行的问题
java异常是一个java对象
异常包含几大类:用户操作失败 程序错误 物理错误
三种类型的异常:检查性异常 运行时异常 错误
异常类:Exception
ArrayIndexOutofBoundsException数组下标越界
NullPointerException空指针异常
classNotFoundException找不到类
ClassCastException 对象强制类型转换出错
捕获异常
try catch
结构:try{
代码
}catch(ExceptionName){
catch快
}
finally放在try catch之后
finally里的代码永远都会执行
抛出异常
throws/throw关键字
throw:生成并且抛出异常 位于方法体内 可作为单独语句使用 抛出一个异常对象,且只能是一个
throws:声明方法内抛出异常 必须跟在方法参数列表后面,不能单独使用 声明抛出异常类型,可以跟多个异常