Как определить, реализован ли абстрактный метод?

Я использую очень большую стороннюю библиотеку delphi без исходного кода, в этой библиотеке есть несколько классов с абстрактными методами. Мне нужно определить, когда метод abtract реализуется классом-потомком во время выполнения, чтобы избежать EAbstractError: Abstract Error и показать пользователю пользовательское сообщение или использовать вместо него другой класс.

например, в этом коде я хочу проверить во время выполнения, реализован ли MyAbstractMethod.

type
  TMyBaseClass = class
  public
    procedure MyAbstractMethod; virtual; abstract;
  end;

  TDescendantBase = class(TMyBaseClass)
  public
  end;

  TChild = class(TDescendantBase)
  public
    procedure MyAbstractMethod; override;
  end;

  TChild2 = class(TDescendantBase)
  end;

Как я могу определить, реализован ли абстрактный метод в классе-потомке во время выполнения?

10
задан Salvador 29 November 2011 в 02:12
поделиться