1.向上类型转换(隐式/自动类型转换),小类型到大类型。
2.向下类型转换(强制类型转换),是大类型到小类型。
3.instanceof运算符,来解决引用对象的类型,避免类型转换的安全性问题。
if(animal instanceof Dog){
Dog dog2=(Dog)animal;//向下类型转换 强制转换
}else{
System.out.println("无法进行类型转换成Dog类型");
}
if(animal2 instanceof Cat){
Cat cat2=(Cat)animal2;//编译时 Cat类型 2.运行时 Dog类型
}else{
System.out.println("无法进行类型转换转换成Cat类型");
}