Objects are the principal building blocks of object-oriented programs.
An object that represents a class and knows how to create new instances of the class. Class objects are created by the compiler, lack instance variables, and can't be statically typed, but otherwise behave like all other objects.
As the receiver in a message expression, a class object is represented by the class name.
Same as a class object.
An object that belongs to (aka is a member of) a particular class.
Instances are created at run time according to the specification in the class definition (aka interface).
An object in another application, one that's a potential receiver for a remote message.