Difference Between UVM_OBJECT and UVM_COMPONENT

In reply to tfitz:

A more basic reason to have separate uvm_object_utils and uvm_component)utils macros is that the factory create methods need to be defined with a hard coded set of arguments for the constructors: a name for a uvm_object and a name and parent for uvm_component. This is why you cannot add constructor arguments to your own classes and still use the factory.