this is a virtual method that has a body, and abstract is just a signature ????
That's right. The fact is that virtual methods can be redefined in derived classes, and abstract methods must be redefined. Similarly, a class that has at least one abstract method must itself be abstract, i.e. It cannot be created directly, since its implementation is (partially) absent.
Finally, each abstract method is also virtual in meaning. virtual basically means that the method is dispatched at runtime to the correct class and therefore can be overridden to implement polymorphism at runtime.
Konrad Rudolph
source share