[Syntax rule] Downcasting can now be explicit. Note It is good programming practice to avoid implicit downcasts. It was possible to assign a base object to a derived object with the simple assignment operator, which is the equals sign (=). The compiler accepted these assignments, but during run time any misuse of an improper downcast assignment caused an error. Now all downcasts can be explicit. This is accomplished with the new as expression operator. Explicit downcasting with the as keyword is illustrated by the following code example, in which ThingClass extends Object: ThingClass myThing = new ThingClass(); Object myObject = myThing; myThing = myObject as ThingClass; // Explicit downcast, good. For more information, see Expression Operators: Is and As for Inheritance. [Area] 
Inheritance
E s c a p e
E x c e p t i o n s
I n h e r i t a n c e
I n t e r f a c e s
M o d i f i e r s
P a r a m e t e r s
P r e p r o c e s s o r