This is my view of what you are talking about:
A class Sub inherits from another class Super
=====>
every object of class Sub IS A object of class Super
=====>
to "build" somethig that IS A Sub, you need to execute
a process of contruction of Super, because every Sub IS A Super
( process of construction = one of the constructors )
======>
every constructor of a class must pass through (at least)
one constructor of his superclass
Think:
only Super class can define/know how to build an object of class Super,
and if you, Sub class, "pretends" to be a Super ( declaring to extend Super ), when you build yoursef you must "walk through" one of my constructors!
The part of you, Sub class, that IS A Super must be build by someone
who knows how to do it.
( example: suppose your superclass, from which you inherit, has private "things". Being private, you cannot access them from a subclass...
who will initialize private things? if a constructor of the superclass is not called ? you will get objects with a corrupted state having part of them not correctly constructed)
Hope this is right...and will help.....
Massimo