Consider the code below
class Meal {
Meal() { System.out.println(\"Meal()\"); }
}
class Bread {
Bread() { System.out.println(\"Bread()\"); }
even though their constructors where called after.
Not after, here how construstor method looks like to compiler :
public Sandwich(){
super();// note this calls super constructor, which will call it's super and so on till Object's constructor
//initiate member variables
System.out.println("Sandwich()");
}