I'm using the constructors inside a factory for tools that can create axes, shovels/spades, swords, pickaxes and hoes. I'm doing this instead of creating a subclass for each of the 5 tools which is really what should be done, I'm just using one class that can make any of the 5 because,as said before the typing must be as minimal as possible. Regardless of why I need the constructors it's smart to standardize certain things. They should all be public or all be protected, which is why I asked.