多态

  • 多种形态
  • 做同样的操作 根据实际环境的不同(实参) 实现不同的效果

同一个引用类型,使用不同的实例而执行不同的操作
方法重写是多态的基础

  1. 父类作为形参 (实参是子类对象)
  2. 父类作为返回值(返回的是子类对象)

在new一个对象时,用谁new谁,多态主要是作为实参或者返回值使用的

向上转型

  • 父类引用指向子类对象
  • 自动向上转型调用的是子类重写父类的方法,不能调用父类中没有的方法
  • 需要调用子类单独有的方法,需要手动向下转型

如果在向下转型时,没有转化成对应的子类类型,会发生类型转换异常
可以用instanceof 减少向下转型中的类型转换异常