多态实现
多态:一个方法名根据对象不同对应不同实现
多态实现原理:(一个类对应一个字节码文件)
1)静多态(编译期多态/静态绑定)------>函数重载问题(重载:同一个类;函数名相同;参数列表不同)
调用函数是在编译期确定的。
2)动多态(运行期多态/动态绑定)------->函数重写问题(重写:父子类;函数名相同;参数列表相同)实现原理:地址覆盖
发生动态绑定的条件:
1)继承 (满足“是一个”的关系)
2)重写
3)向上造型(子类到父类,基类的引用,引用的是派生类的对象)
继承图示/动多态实现原理图: