Forcing type conversions
Basic data types
Reference data type
In Java, because of inheritance and upward transformation, subclasses can be converted very naturally to a parent class, but the parent class is converted to a subclass that requires casting. Because subclasses have more properties than the parent class and are more powerful, the parent class is forced to convert to subclasses. So, is it a success if the parent class is converted to a subclass? In fact, the forced type conversion between them is conditional.
Father Father = new Son ();
Here the Son object instance is transformed upward to father, but notice that the Son object instance is in memory or son type, but its ability is temporarily weakened, what if we want to be strong? Restore its object type!
Son son = (son) father;
Forcing a type conversion produces an error when the true identity of the reference type is the type of the parent class itself.
Father Father = new Father ();
Son son = (son) father;
This system will throwClassCastException异常信息。
Java Review Note 3--coercion type conversion