'Java Instantiation Syntax [duplicate]

I am currently learning Java as a past time, and I am troubling in absorbing this instantiation syntax. I know that if a Main class is created, I can create an object by using this

Main obj = new Main();

But in further lectures (specifically inheritance and polymorphism), they are creating objects as

Parentclass object = new Subclass();

I've tried using

Subclass object = new Subclass();

and have the same output.

Can you please tell me the difference about these two?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source