title: project raised exception class abstract error with message "Abstract Error'
body: <p>I have parent class TPerDevice which has Virtual abstarct method "doAction" , and child class TPerPrnDevice which override "doAction"
  does any body know why is i got abstarct exception ?
  Thanks 
  <a href="https://i.stack.imgur.com/OpZbh.png" rel="nofollow noreferrer">"Abstract Error'</a> </p>
  
  <pre><code>type
    TPerDevice = class(TThread)
    public
      function    doAction(oPrm:String):String; virtual; abstract;
    end;
  
  type 
    TPerPrnDevice = class(TPerDevice)
    public
      //function    doAction(oPrm:String):String;
    end;
  
  type
    TxchPrn = class(TPerPrnDevice)
      function    doAction(oPrm:String):String;override;
      procedure   doLocalJob(oPrm:String);
    end;
  
  ...
  
  function TxchPrn.doAction(oPrm: String): String;
  begin
       doLocalJob(oPrm);
  end;
  
  procedure TForm1.Button1Click(Sender: TObject);
  VAR Devices: array of TPerDevice;
  begin
      SetLength(Devices,2);
      Devices[0]:=TxchPrn.Create;
      Devices[0].doAction('Print');
  end;
  
  procedure TxchPrn.doLocalJob(oPrm: String);
  begin
   ShowMessage(oPrm);
  end;
  </code></pre>