ProtForm.pas
上传用户:fh681027
上传日期:2022-07-23
资源大小:1959k
文件大小:1k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit ProtForm;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   StdCtrls;
  6. type
  7.   TForm1 = class(TForm)
  8.     Button1: TButton;
  9.     Button2: TButton;
  10.     procedure Button1Click(Sender: TObject);
  11.     procedure Button2Click(Sender: TObject);
  12.   private
  13.     { Private declarations }
  14.   public
  15.     { Public declarations }
  16.   end;
  17. var
  18.   Form1: TForm1;
  19. implementation
  20. {$R *.DFM}
  21. uses
  22.   TestClass;
  23. procedure TForm1.Button1Click(Sender: TObject);
  24. var
  25.   Obj: TTest;
  26. begin
  27.   Obj := TTest.Create;
  28.   Obj.PublicData := 10;
  29. //  Obj.ProtectedData := 20;  //won't compile
  30.   ShowMessage (Obj.GetValue);
  31.   Obj.Free;
  32. end;
  33. type
  34.   TFake = class (TTest);
  35. procedure TForm1.Button2Click(Sender: TObject);
  36. var
  37.   Obj: TTest;
  38. begin
  39.   Obj := TTest.Create;
  40.   Obj.PublicData := 10;
  41.   TFake (Obj).ProtectedData := 20; // compiles!
  42.   ShowMessage (Obj.GetValue);
  43.   Obj.Free;
  44. end;
  45. end.