面向对象的三大特征2:继承性

继承性

  • 什么是继承?
  • 继承的关键字
    • 语法
  • 继承的优缺点
    • 类的继承
  • 方法重写与方法重载 (重点)
    • 方法重写
    • 方法重载(overload)与方法重写(override)的区别
  • super关键字
  • 访问修饰符(重点)
  • 子类对象实例化全过程

什么是继承?

  • 子类继承父类,允许子类拥有父类的属性和行为(方法)
  • 继承是多态的前提,如果没有继承就没有多态。

继承的关键字

  • super(父类)
  • exteds(继承)

语法

  • class 子类 extends 父类{
    }

继承的优缺点

  • 优点
    提高了代码的复用性
  • 缺点
    由于继承会有多层的继承关系,会提高他们之间的依赖关系,耦合度会变高

类的继承

面向对象的三大特征2:继承性_第1张图片

  • 一个子类可以派生别的子类
  • 一个父类可以有多个子类,一个子类只能有一个父类
  • Java 的继承是单继承
  • 所有类的基类都是 Object(Java所有类的父类)

方法重写与方法重载 (重点)

方法重写

  • 如果父类的方法满足不了子类要求时,子类可以对父类进行方法重写
  1. 要求子类重写的方法名,参数列表、返回值类型必须和父类完全一致
  2. 子类重写方法的访问修饰符权限不能低于父类方法的修饰符权限
  3. 子类方法和父类方法必须同为 stastic或非stastic

方法重载(overload)与方法重写(override)的区别

  1. 重载必须在同一个类中,方法重写必须存在继承关系
  2. 方法重载要求 方法名相同参数列表必须不相同 和返回值无关
  3. 方法重写要求 方法名,参数列表、返回值必须和父类一致

super关键字

  • super关键字可以修饰属性,方法、构造方法
  1. 当前子类和父类属性出现重名时,默认会调用子类的属性(就近原则);可以通过 “super.属性名” 的方式显示的调用父类声明同名属性
  2. 子类重写父类方法后,如果子类想再次调用父类被重写的方法 可以通过 “super.方法名()” 的方法调用父类方法
  3. super 可以修饰构造方法 通过子类构造方法中使用 “super(形参)” 来显示和调用父类对应的构造方法
  • 注意
  1. “super(形参)” 必须声明在首行
  2. 说明 “this(形参)” “super(形参)” 只能出现一个
  3. 在构造方法中,不显示的通过“super(形参)” 的方式调用父类对应的构造方法;默认会调用父类无参的构造方法

如果一个类没有显示的继承一个类,就会继承 Object

访问修饰符(重点)

修饰类,变量、方法、接口

  • public :公共的,在当前项目下任何地方都可以访问
  • protected:受保护的,在同一个包下或者在其他子类中可以访问
  • default:缺省 在同一个包下
  • private:私有 在当前类下面访问

子类对象实例化全过程

面向对象的三大特征2:继承性_第2张图片

学习笔记

你可能感兴趣的:(笔记,java,类)