In reply to raghu.krishnas:
There is no functional difference between calling create in the constructor new() or the build_phase() with the code you have shown.
The difference comes into play when extending the class sinc_base_test. SystemVerilog requires you to call super.new() as the first statement of the extended class’s new(). When you extend the build_phase(), there is no requirement to call super.build_phase(), and if you do, you can call it anywhere. This gives you much more flexibility when extending a class. So the UVM recommends putting all statements in the build_phase() when possible instead of new().