TObject is the ultimate base class for any other class, whether you declare it or not. It provides set of generic and mostly virtual methodsĀ used to:

  • Create, maintain, and destroy instances of the object by allocating, initializing, and freeing required memory (Create, Free, Destroy, DisposeOf).
  • Return class-type and instance information on an object and runtime type information (RTTI) about its published properties.
  • Respond when object instances are created or destroyed.
  • Support message handling.
  • Support interfaces implemented by the object.