D ynamic dispatch is the process of selecting which implementation of a polymorphic method to call at run time. It is commonly employed in, and considered a prime characteristic of, object-oriented programming (OOP) languages and systems. Polymorphism in object-oriented programming is the phenomenon where objects of the class expose an operation of the same name but possibly differing in behavior. Dynamic dispatch contrasts with static dispatch, in which the implementation of a polymorphic operation is selected at compile time. The whole purpose of dynamic dispatch is to defer the selection of an appropriate implementation until the run time type of a parameter is known. A polymorphic operation has several implementations, all associated with the same name. With dynamic dispatch, one particular implementation of an operation is chosen at run time. In apex programming methods and classes are final by default. You cannot use the final keyword in the declaration of a ...