Alcance del constructor privado en clase anidada.

Esto es más de unrompecabezas que pregunta Tengo el siguiente código:

public class PrivateBaseConstructor {
    public static class BaseClass {
        private BaseClass() {
        }

    }

    public static class DerivedClass extends BaseClass {
        public DerivedClass() {
            super(); // 1*
        }
    }
}

Aquí la convocatoria desuper(); en 1 * se permite el evento aunque el constructor de la clase base esprivate. Si escribimos las clases como clases separadas en el mismo paquete:

BClass.java
public class BClass {
    private BClass() {

    }
}

DClass.java
public class DClass extends BClass {
    public DClass() {
        super(); // 2*
    }

El compilador da error correctamente en 2 * ya que el constructor de la clase base no es visible.

¿Por qué el compilador no emite un error en mi primer escenario cuando ambas clases se declaran estáticas dentro de una clase?

Respuestas a la pregunta(3)

Su respuesta a la pregunta