The TPersistent class is the base class for classes that require the ability to save/load their published properties to/from JSON strings. All of the functionality in the TPersistent class is protected and normally only accessible to descendant classes. The TWriter class is used by TPersistent descendants for outputting properties to a JSON string, and the TReader class for parsing properties from a JSON string.
All TComponent, TCollection, TCollectionItem, and TControl classes are TPersistent-descendant classes, and all contain functionality for automatically loading their published properties. In addition, the TFormControl class contains special functionality for loading the published properties for a form instance and all of its contained components/controls. This functionality is used to load the published properties for a form class when an instance of the class is created.