Иерархия внутренних классов в Java

Я использую иерархию внутренних классов для представления некоторых данных в приложении, и я столкнулся с сообщением об ошибке, которое я просто не понимаю. Мой код можно свести к следующему минимальному примеру:

public class A {
    public class B extends A {}
    public class C extends B {}
}

Javac (и моя IDE, конечно) не может скомпилировать код со следующим сообщением об ошибке:

A.java:3: cannot reference this before supertype constructor has been called
    public class C extends B {}
           ^
1 error

Я не писал это нигде . Кодов не больше, чем указано выше, поэтому я предполагаю, что javac сгенерировал что-то, связанное с внутренним классом.

Я нашел другой способ представления моих данных, поэтому меня просто интересует хорошее объяснение, почему это не так. компилировать.

7
задан sgokhales 12 July 2011 в 08:02
поделиться