Introduction to OOP: Chapter 20 : A Second Look at Classes
Classes as Objects
If a class is an object it must have responsibilities.
What are these responsibilities?
Maintain information about the instances of class (instance size, methods).
Generate new instances of the class.
But if a class is an object, and every object is an instance of some class,
what is the class of a class ?