¿Por qué se permiten diferentes tipos de referencia de objetos en Java?
Me pregunto por qué se permite tener un tipo diferente de referencia de objeto. Por ejemplo;
Animal cow = new Cow();
¿Puede dar un ejemplo donde sea útil usar diferentes tipos de referencia de objeto?
Editar:Cow extends Animal