...
This erroneous behavior results from the race condition between an oncoming exception and the initialization of the subclass. If the exception comes too soon, it finds the subclass in a compromised state. This behavior is even more especially counter intuitive because logger is declared final and is not expected to contain an unintialized value.
...