It really depends on the kind of classes as not all classes are created equal.
As general guideline I would suggest 2 options:
- For value & immutable classes (Exception, Integer, DTOs and such) use single primary constructor as suggested in above answer
- For everything else (session beans, services, mutable objects, JPA & JAXB entities and so on) use default constructor only with sensible defaults on all the properties so it can be used without additional configuration