Class page factory framework

Can anyone please explain what is the need of pagefactory in page object model.

Eg. We use below code for initializing the page object class.

LoginPage loginPage = PageFactory.initElements(driver, LoginPage.class);
Why can’t we use

LoginPage loginPage = new LoginPage(driver);
Similarly while returning new page in each page object method we use

return new PageFactory.initElements(driver, HomePage.class);
why should it not be

return new HomePage(driver);
Please help me in understanding PageFactory, as I am new to page object pattern. I am thinking we can still manage without using PageFactory.