title: Best Practice : Creating private constructor for a class having only static methods
body: <p>Is it a right/recommended practice to add a private no-args constructor (which does nothing) for a class with only static utility methods and no instance variable (completely stateless)?</p>
  
  <p>My reasoning for same is, i want to avoid any client using this class by instantiating it and always want this class's methods to be accessed in static fashion. Private constructor helps me adding this restriction on my utility classes.</p>
  
  <p>Also i am defining my static classes as final, to avoid any client extending them; is it a right practice?</p>