NextObject is the superclass of many of the classes in this package. From NextObject, other classes inherit a basic interface to the run-time system, and its instances enhance their ability to behave as objects.
Among other things, the NextObject class provides inheriting classes with a framework for creating, initializing, finalizing, copying, comparing, archiving and distributing objects, for performing methods selected at run-time. For example, to find out whether it implements a particular method, you'd send it a respondsToMethod message.
The NextObject class is mostly an abstract class; programs use instances of classes that inherit from NextObject, but rarely instances of NextObject itself.
The NextObject class defines a number of methods that subclasses are expected to override. Often, NextObject's default implementation simply returns the receiving object. Putting these "empty" methods in the NextObject class serves two purposes: