Java学习笔记————继承+多态+重写+重载【思维导图】

继承

概念

​ 子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。

​ 如果在父类中拥有私有属性(private修饰),则子类是不能被继承的。
标记: 红色, 红色

特点

  1. ​ 子类会把父类的方法继承下来
  2. 如果父类中包含了某些类中的共同属性和行为,可以选择继承来设计程序
  3. 子类使用extends来继承父类的共同属性,同时子类可以有自己的属性or方法
  4. 父类更通用,子类更加具体
  5. 子类只可以获得父类中非private的属性,如果想要继承就需要提供公共的set和get方法,私有的无法继承。
  6. Java中只可以单继承:
    即一个子类只允许有一个父类,但是可以实现多级继承,及子类拥有唯一的父类,而父类还可以再继承。

使用

在父子类关系继承中,如果成员变量重名,则创建子类对象时,访问有两种方式

  1. 直接通过子类对象访问成员变量
  2. 等号左边是谁,就优先使用谁,如果没有就向上找。
  3. 间接通过成员方法访问成员变量 ====>>>>该方法属于谁,谁就优先使用,如果没有就向上找。
  4. 在继承关系中,关于成员变量的使用

​ (1) 局部成员变量:直接使用

​ (2)本类成员变量:this.成员变量

this&super

  1. this

    访问本类的成员变量,成员方法和构造方法

  2. super

    父类成员变量:super.父类成员变量

    访问父类的成员变量,成员方法和构造方法

多态

注意:在多态中,编译看左边,运行看右边

概念

同一个行为具有多个不同表现形式或形态的能力

特点

  1. 消除类型之间的耦合关系,实现低耦合
  2. 具有灵活性,可扩充性,可替换性

体现形式

  1. 继承

    父类可以是抽象类,也可以是普通类

    父类引用指向子类调用复写这个方法的时候,调用的是子类的方法

  2. 重写

  3. 引用

    向上转型
    1. 格式:父类名称 对象名 = new 子类名称();
    2. 含义:右侧创建一个子类对象,把它当作父类来使用。
    3. 向上转型一定是安全的,从小范围到大范围。
      但是一旦向上转型,子类中原本特有的方法就不能再被调用了。
    向下转型

    如果调用父类中没有的方法,则要向下转型

    1. 格式:子类名称 对象名 = (子类名称)父类对象
    2. 含义:将父类对象,【还原】为本来的子类对象
    3. 必须保证对象本来创建的时候是子类,向下转型仍为子类,本来不是子类,向下转型会报错

重写&重载

重写

概念

是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!

规则
  1. 参数列表必须与被重写方法相同。
  2. 访问权限不能比父类中被重写的方法的访问权限更低(public>protected>(default)>private)
  3. 父类成员的方法只能被它的子类重写。

重载

概念
是在一个类里面,方法名字相同,而参数不同。

常用:构建器的重载

无论是成员变量还是成员方法,如果没有都是向上父类中查找,绝对不会向下查找子类的。
注意:在多态中,编译看左边,运行看右边

自制思维导图

Java学习笔记————继承+多态+重写+重载【思维导图】

参考学习

我觉得老师和博主都讲得很好,尤其是代码非常好理解,大家可以参考一下,并使用思维导图理清一下思路~

参考博文

参考视频

欢迎大家关注我的公众号——生信StudyAccountJava学习笔记————继承+多态+重写+重载【思维导图】