## **向上向下转型**
多态弊端:不能调用子类特有的方法
### **弊端解决方案:**
向下转型:强制类型转换 int a =(int)3.14
```
子类类型 变量名 = (子类类型)父类类型变量
```
向下转型编译器不检查,
Java解决向下转型的弊端,一个关键字,instanceof运算符,判断一个变量是不是该类的类型
向上类型(就是指多态) 自动类型转换 double d = 10;
```
Animal an = new Dog();
```
数据范围小的转数据类型大的
~~~
public class DuoTai {
public static void main(String[] args) {
//创建狗使用多态
Animal an = new Dog();//向上转型就是指多态
an.eat();
Dog dog =(Dog)an;//向下转型,dog在animal之下,这时dog就能调用子类特有的方法
dog.lookHome();
}
}
~~~