Lazy loading is a concept where we delay the loading of the object unit we require it i.e. we load an object on demand rather than loading the objects unnecessarily. For instance if you have a "Customer" class which has "Orders" object aggregated. So you like to load the customer data but the orders objects you would like to delay until your application needs it.
Now coming to name why it is called lazy loading is because like a lazy person, you are delaying something you don't want to.