Pages

Search This Blog

Monday, January 21, 2013

A class describes the behavior and properties common to any
particular type of object. For a string object (in Objective-C, this is
an instance of the class NSString), the class offers
various ways to examine and convert the internal characters that it
represents. Similarly, the class used to describe a number object (NSNumber) offers functionality around an internal numeric value, such as converting that value to a different numeric type.
In
the same way that multiple buildings constructed from the same
blueprint are identical in structure, every instance of a class shares
the same properties and behavior as all other instances of that class.
Every NSString instance behaves in the same way, regardless of the internal string of characters it holds.
Any
particular object is designed to be used in specific ways. You might
know that a string object represents some string of characters, but you
don’t need to know the exact internal mechanisms used to store those
characters. You don’t know anything about the internal behavior used by
the object itself to work directly with its characters, but you do need
to know how you are expected to interact with the object, perhaps to ask
it for specific characters or request a new object in which all the
original characters are converted to uppercase.
In Objective-C, the class interface
specifies exactly how a given type of object is intended to be used by
other objects. In other words, it defines the public interface between
instances of the class and the outside world.