多态性有两种:编译时多态和运行时多态。
1. 编译时多态
对于多个同名方法,如果在编译时就能确定执行同名方法的哪一个,则称为编译时多态。方法的重载就是编译时多态。
2. 运行时多态
如果在编译时不能确定多个同名方法的哪一个,只能在运行的时候才能确定,就称为是运行时多态。
方法的覆盖表现两种多态性,当对象获得本类的实例时,是编译时多态,否则就是运行时多态。
里氏替换原则 : 任何基类可以出现的地方,子类一定可以出现。里氏替换原则讲的是运行时多态。
本文共 274 字,大约阅读时间需要 1 分钟。
多态性有两种:编译时多态和运行时多态。
1. 编译时多态
对于多个同名方法,如果在编译时就能确定执行同名方法的哪一个,则称为编译时多态。方法的重载就是编译时多态。
2. 运行时多态
如果在编译时不能确定多个同名方法的哪一个,只能在运行的时候才能确定,就称为是运行时多态。
方法的覆盖表现两种多态性,当对象获得本类的实例时,是编译时多态,否则就是运行时多态。
里氏替换原则 : 任何基类可以出现的地方,子类一定可以出现。里氏替换原则讲的是运行时多态。
转载于:https://www.cnblogs.com/leeeee/p/7276446.html