(面向对象编程)方法重写/覆盖:子类在继承父类后,用相同的方法名与参数列表重新实现父类的方法,以改变或扩展其行为(运行时多态的常见方式)。在不同语言中细节略有差异(如 Java 需匹配签名;C++ 常与 virtual/动态绑定相关)。
/ˈmɛθəd oʊˈraɪdɪŋ/
The subclass overrides the method to return a different value.
子类重写这个方法来返回不同的值。
Because of method overriding, the program calls the child class version at runtime even when the reference type is the parent class.
由于方法重写,即使引用类型是父类,程序在运行时仍会调用子类版本的方法。
method 源自希腊语 methodos,意为“追随的道路、做事的方法”;override 由 *over-*(在……之上、越过)+ ride(骑行)发展而来,后来引申为“优先于、推翻、否决”。合在一起的 method overriding 在计算机语境中表示“用子类实现来取代(优先于)父类的方法实现”。
@Override、重写规则与设计建议。