Memory and resource utilization plays crucial role in current enterprise era developers always need to take care of resource creation, utilization and it's cleanness on correct time to make application more effective and optimized.
Object creation is also part of it. Lazy initialization is technique were we restrict the object creation until its created by application code. This saves the memory from redundant objects which some time may be very big/heavy.
In other way eager initialization creates the object in advance and just after starting the application or module. This is helpful in case the object is mandatory and in all the cases functional. This way application provides the ready to use object and saves execution time at time of actual request.
So, as per above details, both lazy and eager loading/initialization plays critical role and should be used as per the requirement and behavior of application.