Yes, As paul mentioned, servlet must have default constructor[no-arg constructor] .
Joined: Apr 12, 2006
Let me take the older type of servlets that developers write.
Developers write with out.println() statements to print the html.
In such cases also, we dont write constructors.
Its fine that default constructor is available for any class.
But, is there any specific reason for not writing constructor in such cases?
Well, there's no stopping anyone from writing a constructor for a servlet. However, you need to keep in mind that the servlet context is NOT initialised at the point when the constructor is invoked.
You can most definitely perform some house-keeping tasks like initialisations or checking on the availability of services/resources, but that's the very purpose for which the init() is available as part of the servlet's lifecycle.
In my opinion, there's no particular 'purpose' to defining a constructor for a servlet. Of course, one might never know when a skewed requirement comes along mandating a constructor definition for a servlet. Do let us know if you're already aware of any such requirement.