override译作覆盖,用于继承一个基类时,对基类的非虚方法的重新实现,如果是虚方法,则是多态。两者完全不同。
对于使用基类型指针或是引用来调用方法,如果是覆盖,其调用关系在编译期间就已经确定,而对于多态,则是后期联编,在运行时根据动态类型来确定
overload表示“重载”,用于同一类中同名方法但参数个数或类型不同的实现
items override overload
位置 存在于继承关系的类中 存在于同一类中
方法名 相同 相同
参数列表 相同 必须不同
返回值 相同 可以不相同