Difference between revisions of "Class"

From Lazarus wiki
Jump to navigationJump to search
Line 25: Line 25:
 
TMyClass.Create;
 
TMyClass.Create;
 
begin
 
begin
   SomeVar := 6
+
   SomeVar := 6;
 
end;
 
end;
 
</delphi>
 
</delphi>

Revision as of 05:07, 30 March 2009

A highly structured data type in Object Pascal dialects such as Delphi or the ObjFPC dialect. Classes are able to contain variables, constructors, destructors, functions, procedures, and properties using access scopes. Another interesting thing about classes is that they free the programmer from the need for pointers and references. They are automatically handled by the compiler at compile time. Classes are able to inherit and to be inherited by other classes.

<delphi> type

   TMyClass = class(TObject)
   private // self access only
       FSomeVar: Integer;
   public // access by anything
       constructor Create; overload;
       constructor Create(Args: array of Integer); overload;
       destructor Destroy; virtual;
       function GetSomeVar;
       procedure SetSomeVar(newvalue: Integer);
   published // special type of public scope
       property SomeVar: Integer read GetSomeVar write SetSomeVar default 0;
   end;

</delphi>

<delphi> var

   classInstance: TMyClass.Create;

</delphi>

<delphi> TMyClass.Create; begin

 SomeVar := 6;

end; </delphi>