type Tanimal = class public procedure bark(); virtual; abstract; end; implementation var animal: Tanimal; initialization animal := Tanimal.Create; animal.bark(); // abstract method call exception at runtime here animal.Free; end.