In reply to ViKKi:
Visiting the UVM Reference Manual would really help you to resolve the confusion.
See here for get_type:
static function uvm_object_wrapper get_type ()
Returns the type-proxy (wrapper) for this object. The uvm_factory’s type-based override and creation methods take arguments of uvm_object_wrapper. This method, if implemented, can be used as convenient means of supplying those arguments.
The default implementation of this method produces an error and returns null. To enable use of this method, a user’s subtype must implement a version that returns the subtype’s wrapper.