Because the stack gets populated at runtime. If you checked the stack trace in
main
how would the runtime know what will happen in the method chain? How would it know, for example, that method1
will absolutely for sure call method2
and the JVM will not crash before it gets called?