Uvm_monitor and class parameter

In reply to chr_sue:

In reply to verif_learner:
In your monitor you might use a different seq_item type as in your driver. This gives you some freedom.
You have to declare this variable in your monitor Class.

I understand what you are saying. My question was that we cannot have 2 instances of the monitor with 2 different type as monitor class hardcodes the transaction class type.

If this is okay in case of monitor class then why do we have parameterized class for driver?

I understand that one can use factory to have different transaction item for different monitor but again I come back to my original question. The same can be done for driver too.