I know that DateFormat is an abstract class. So I cannot instantiate an object of this type. But then how can I say:
How come I can declare and construct an array of DateFormat type i.e a class that is abstract? How does the JVM differentiate between the object instantiation and an array constructed to hold abstract class type objects?