The initial value and sequence expressions for an instance of the class are evaluated in an environment that comprises the following:
The initial value and sequence expressions are evaluated at the time that an object of the class is created. The expressions are evaluated in the order in which they occur in the class*/name expression (across clauses and including sequence clauses).
Before an initial value expression has been evaluated, the value of the corresponding instance variable is initialized to undefined (see section 4.1). Because all of the instance variables have mutually-recursive scopes, the undefined value of an instance variable can be exposed. The initialzation process is described in more detail in section 6.4.