type TMyClass = class private FSomeField: Integer; // by convention, fields are usually private and exposed as properties public constructor Create; begin FSomeField := -1; end; procedure SomeMethod; property SomeField: Integer read FSomeField write FSomeField; end; procedure TMyClass.SomeMethod; begin // do something end; var lMyClass: TMyClass; lMyClass := new TMyClass; // can also use TMyClass.Create lMyClass.SomeField := 99; lMyClass.SomeMethod;