The Smalltalk object model is based on a set of simple rules that are applied uniformly. The rules are as follows:
Rule 1. Everything is an object.
Rule 2. Every object is an instance of a class.
Rule 3. Every class has a superclass.
Rule 4. Everything happens by message sends.
Rule 5. Method lookup follows the inheritance chain.
Let us look at each of these rules in some detail.