Right answer is (c) Default constructor can be called explicitly
Easiest explanation - Default constructors can be called explicitly anytime. They are specifically used to allocate memory space for the object in memory, in general. It is not necessary that these should always be called implicitly.