r1 r4 pre b1 b2 r3 r2 MainClass
Static init blocks are executed at class loading time Instance init blocks run right after the call to super() in a constructor. When multiple init blocks of a single type occur in a class, they run in order