It’s possible to have one or more instance constructors be private. A private constructor means that only code internal to the class can construct an instance using that particular combination of parameters.

Below is an example, where we have a public Dog constructor that takes two arguments, but a private one that takes only a name.