Suppose in class A's <clinit>, we instantiate class B and in the <init> for class B, we instantiate class A. How is this handled? As I see it, to instantiate class B in class A's <init> somehow the <clinit> for class A has to complete. I am at a loss to see how the JVM might be handling this problem. Senthil