虚方法(虚拟方法):面向对象编程中可被子类重写(override)的方法,并且在通过基类引用/指针调用时,实际执行的版本会在运行时动态绑定(dynamic dispatch)到对象的真实类型上。常见于 C++、C# 等语言(在 Java 中方法默认更接近“虚”的行为,但术语与细节不同)。
/ˈvɝːtʃuəl ˈmɛθəd/
A virtual method can be overridden in a subclass.
虚方法可以在子类中被重写。
In C++, calling a virtual method through a base-class pointer enables polymorphism, so the derived implementation runs at runtime.
在 C++ 中,通过基类指针调用虚方法可以实现多态,因此运行时会执行派生类的实现。
virtual 源自拉丁语 virtus(力量、效能、内在能力)并发展出“在效果上成立、但不一定是字面/实体”的含义;在编程语境里引申为“由运行时机制决定实际调用目标”。method 源自希腊语 methodos(追求/途径、方法),在面向对象中指“对象可执行的函数/操作”。合起来,“virtual method”即“由运行时决定分派到何种实现的方法”。