Javadoc упоминает, что класс Object имеет открытый конструктор no-arg. Но исходный код объекта не содержит в нем явного конструктора. Поэтому, очевидно, компилятор создал для него. Однако, если я вижу трассировку стека вызовов, когда конструктор вот-вот вернется (как показано ниже), я не вижу никакого вызова Object.<init>
в этой трассе.
Итак, вопрос в том, имеет ли класс Object конструктор по умолчанию, как говорит doc? Если да, то почему я не вижу его в трассировке стека вызовов?
public ConTest()
{
new Throwable().printStackTrace();
}
Результат:
java.lang.Throwable
at ConTest.<init>(ConTest.java:8)
at ConTest.main(ConTest.java:16)