1. 适用范围:

作用:

  1. 同时满足以下两个需求
    1. 能调用父类的方法和属性
      1. 除了被子类重写的方法
      2. 包括父类的静态方法
        1. 不管有没有被重写
    2. 能调用子类的重写方法(最主要的意义)(⭐)
      1. 除了子类重写的静态方法

场景

  1. 对象类型相同, 但每个对象的个别方法有稍许不同, 即多态
    1. 如同一个数组里面, 都是同一类型的对象, 即父类对象, 但每个对象在个别方法上又有所不同
      1. 实例:
        //Shape是Circle和Rectangle的父类
        Shape[] = new Shape[2];
        Shape[0] = new Circle;
        Shape[1] = new Rectangle;
  2. 常把抽象类作为方法参数让方法使用多态

2. 语法梗概:

  1. 把子类对象的引用赋值给父类对象

2. 详细语法:

父类 父类对象 = new 子类()

父类 父类对象
父类对象 = 子类的实例对象

父类实现的接口 父类对象 = 子类的实例对象