Need of Default class Constructor in UVM

In reply to S.P.Rajkumar.V:

It is highly recommended that you register all of your UVM components and objects with the factory, even if you think you won’t use any overrides.

If a class is not registered with the factory, then you cannot use the create() function. Since create() is the recommended method in UVM to create new objects, any other UVM users who will potentially re-use your code will have to deviate from the standard UVM methodology.

Registering with the factory is one simple line of code and is well worth the effort. With respect to the new() function, there is a compile define which can force the user to implement constructors, but pre-compiled UVM versions vary on the use of this define.