¿Por qué los campos estáticos no se inicializan a tiempo?

Se imprime el siguiente códigonull una vez.

class MyClass {
   private static MyClass myClass = new MyClass();
   private static final Object obj = new Object();
   public MyClass() {
      System.out.println(obj);
   }
   public static void main(String[] args) {}
}

¿Por qué los objetos estáticos no se inicializan antes de que se ejecute el constructor?

Actualizar

Acababa de copiar este programa de ejemplo sin atención, pensé que estábamos hablando de 2 campos de objetos, ahora vi que el primero es un campo MyClass ..: /

Respuestas a la pregunta(5)

Su respuesta a la pregunta