Por lo que entiendo, preguntas si es posible definir métodos abstractos:
Código Delphi
[-]
TPadre = class
public
procedure MiProcedure; virtual; abstract;
end;
THijo = class(TPadre)
public
procedure MiProcedure; override;
end;
implementation
procedure THijo.MiProcedure;
begin
end;
En esta caso el métido MiProcedure es abstracto, si instancias un objeto del tipo TPadre y llamas a este métido, producirá un "abstract error", las clases que herendan de TPadre no estan obligadas a implementar el método, pero si el método no es implementado no puede ser llamado.
Saludos!