Why is the build() phase in UVM executed in a Top - Down fashion and the other phases in Bottom - Up fashion?

In reply to dave_59:

Hi dave,

could you please provide the following clarifications.

as the parent component is not aware of derived components properties that belong to only derived component. how it would be possible for parent class to construct the derived component.

as super.build is already present in build function of child , as per your inputs it has to be called by the object , is it done by the parent object.

I am new to the uvm. could you please provide clarifications.