virtual (procedure directive)
A virtualis a method whose call is linked to its code at run time, by a process called late binding.
procedure Method(<parameter list>); virtual;
Declaring a method as virtual makes it possible for methods with the same name to be implemented in different ways within a hierarchy of object types.
To make a method virtual, follow its declaration in the object type with a semicolon, the reserved word "virtual", and another semicolon, like this:
procedure Method(param1, Param2: Integer); virtual;