No, the classes' and constructors' access modifiers share no connection.
Usually you would mark your constructor as public, so any class can build an instance of it.
The best example not to do this though is the Singleton
pattern.
In a Singleton you mark the constructor as private, so nobody but your own class can instantiate it.
To provide an instance to other classes, you would create a public static function that builds the instance on demand.
This allows you to control instances and impose restrictions, in the case of the Singleton you would only allow one instance.