See First class object.
An object in memory whose state is stored independently in the datastore. As a result, the first class object has an identity value, and it may be inserted, modified, fetched, and deleted independently of any other first class object. Application data objects are nearly always first class objects.
See also Second class object.
A Boolean property.
Any class that accesses the member field(s) of another class is friendly to that class.