You said every servlet has a servlet config. Think about it ... where does it get its servlet config come from? Surely you never pass it the servlet config ...
In fact the basic question is What makes an ordinary
Java class into a servlet? A servlet after all is nothing but some Java code that extends (99% of the time) the HTTPservlet class .... Really nothing special about it yet...
The point is, its the container that makes the servlet special. Its the container that gives the servlet its config. Everything the servlet can do is by the 'Power of the container'.
Where do you think the container does all this for the servlet? By using the servlet's constructor of course. So if you hijack the servlet constructor the container never gets a change to create the servlet and it never gets its config and we have pretty big disaster in servlet Land.
If you are still not convinced, think about this. Do you even construct the servlet? If not then why do you think that
you should have control over its constructor ...
(For a more technically correct answer I suggest HFJS - you'll understand exactly how 'grandfather container gives a servlet is servletness'....)