Anytime an object of that base class type is type cast into a derived class type, it is called a downcast.
Read full article from Downcasting in Java
Parent p = new Parent ( );
/*this is a downcast since the Parent class
object, "p" is being cast to a ChildClass type,
and ChildClass derives from the Parent class */
ChildClass c = (ChildClass) p;
The code above will actually compile, but at runtime it will throw a Runtime Exception (a java.lang.ClassCastException).