文章目录
四特性
抽象
从现实中的多个物体中抽象出它们共同拥有相同的属性和方法
封装
把抽象出来的相同的属性和方法封装在类中
把相同功能的类封装在模块、组件、插件中
继承
继承:子类继承父类的可继承的属性和方法
在子类中持有父类对象,可直接调用父类的方法,本质上是持有的父类对象调用方法
重写方法:重写不是覆盖,相当于子类拥有两个相同的方法
子类中的方法,可直接调用方法
父类中的方法,使用super,标明调用的是父类中的方法
可继承
指的是非私有&非final的属性和方法
多态
实现的基础:重写+动态绑定
重写:子类的实例对象调用重写方法,调用的是子类中的方法,不是父类中的方法
动态绑定:运行时根据具体的实例对象才能具体确定是哪个方法
编译时和运行时
作为方法的参数
编译时,使用父类作为方法的形参类型
运行时,使用子类的实例对象作为方法的实参
作为引用变量的类型
编译时,在类中定义引用变量时,使用父类作为变量的类型,使用引用变量调用重写方法
运行时,把子类的实例对象赋值引用变量,调用的重写方法实际上调用的是子类中的方法