程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi類的入門的例子(5): override

Delphi類的入門的例子(5): override

編輯:Delphi

unit Unit1;
interface
uses
 Classes, Controls, Forms, Dialogs, StdCtrls;
type
 TForm1 = class(TForm)
  Button1: TButton;
  procedure Button1Click(Sender: TObject);
 end;
 TBase = class
  procedure proc1; virtual;
  procedure proc2;
 end;
 TChild = class(TBase)
  procedure proc1; override;
  procedure proc2;
 end;
var
 Form1: TForm1;
implementation
{$R *.dfm}
{ TBase }
procedure TBase.proc1;
begin
 ShowMessage('B1');
end;
procedure TBase.proc2;
begin
 ShowMessage('B2');
end;
{ TChild }
procedure TChild.proc1;
begin
//inherited;
 ShowMessage('C1');
end;
procedure TChild.proc2;
begin
 ShowMessage('C2');
end;
procedure TForm1.Button1Click(Sender: TObject);
var
 B: TBase;
 C: TChild;
 BC: TBase;
begin
 B := TBase.Create;
 C := TChild.Create;
 BC := TChild.Create;
 B.proc1;     //B1
 B.proc2;     //B2
 TChild(B).proc1; //B1
 TChild(B).proc2; //C2
 C.proc1;     //C1
 C.proc2;     //C2
 TBase(C).proc1; //C1
 TBase(C).proc2; //B2
 BC.proc1;    //C1
 BC.proc2;    //B2
 TBase(BC).proc1; //C1
 TBase(BC).proc2; //B2
 TChild(BC).proc1; //C1
 TChild(BC).proc2; //C2
 B.Free;
 C.Free;
 BC.Free;
end;
end.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved