接口 多态 异常

接口

关键字 interface 主要用来定义规范

  1. 接口中的抽象方法 经常省略 public abstract
  2. 和类一样 也是引用数据类型
  3. 接口中的成员变量是常量 pulic static final 都可以省略
  4. 接口是用来被实现的而且一个类可以实现多个接口.

接口和类的关系

  1. 接口不能有构造方法 所以不能实例化对象
  2. 接口里面吧能有普通方法 只能有抽象方法
  3. 接口是不能被继承的(但是能被接口继承)
    但是可以被类随实现

注意 Java中类和类是单继承的 但是接口直接可以多继承

接口和抽象类的区别

  1. 抽象类可以有构造方法 普通成员变量 静态成员变量 静态普通法
    抽象方法

多态

多态的 在同一个对象,在不同时刻表现出的不同形态

多态的三个必要条件

  1. 要有继承或实现关系
  2. 要有方法重写
  3. 要有父类引用子类对象 引用就是变量 子类对象就是值(向上转型) 向上转型: 子类往前走一步 变成父类
注意
  1. 子类重写了父亲的方法以后 执行的是自己的方法
  2. 子类有 父亲有的方法 子类可以通过继承直接使用
  3. 子类有 父类没有 调用的时候就报错

向下转先下型 父类向下走一不 变成子类

向下转
  1. 强制转换 可能出现类型异常转换
  2. 向下转之前 必须先上转型
  3. 为了避免类型异常 也可以使用instanceof关键字 进行判断 instanceof 对象 instanceof 类型 判断对象是否是个类型
多态的使用场景

方法的形参是父类 实参可以是子类
形参 与 实参
形参 方法声明时 方法的小括号里面的参数
实参 方法调用时 方法小括号里面的参数
好出 提高代码扩展性

异常 代码在运行时出现的错误

编译时异常:代码还没运行,就出现了问题

  1. SQLException:操作数据库时查询表可能发生的异常
    2. IOException:操作文件时发生的异常
    3. FileNotFoundException:操作不存在文件时发生的异常
    4. ClassNotFoundException:加载类而类不存在时发生的异常
    5. EOFException:操作文件到文件末尾发生异常
    6. llegalArguementException:参数异常
行时异常:代码在正常的运行过程中出现的问题
  1. NullPointerException:空指针异常,当应用程序试图在需要对象的地方出现null时抛出该异常
    2. ArithmeticException: 数学运算异常,当出现异常的运算条件时抛出此异常
    3. ArrayIndexOutOfBoundsException: 数组下标越界异常,用非法索引访问数组时抛出的异常
    4. ClassCastException :类型转换异常,当试图将对象强制转换为不是实例的子类时抛出该异常
    5. NumberFormatException:数字格式不正确异常,当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时抛出该异常
异常解决

try 捕获异常
catch 处理异常
finally 不管有没有异常都要执行 用来释放资源
throws/throw g关键子
throw 生成一个异常
throws 抛出一个异常 谁调用我 我就抛给谁 异常还存在 存在与最终抛给了谁

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值