Is there any difference between these? If they are different what is the difference and why would you use one vs the other?
IMyInterface myObject = new ConcreteClass();
vs
ConcreteClass myObject = new ConcreteClass();
BTW I'm not looking for a definition of polymorphism or inheritance, more an example of where you would need to use the first line.