对象的向上转型,其实就是多态的写法:
格式:父类名称 对象名=new 子类名称(); Animal animal=new Cat();
含义:右侧创建一个子类对象,把它当做父类来看待使用。 创建了一只猫,当做动物看待,没问题
注意事项:向上转型一定是安全的,从小范围转向了大范围;但是有一个弊端
对象一旦向上转型为父类,那么就无法调用子类原本特有的内容
解决方法:用对象的向下转型还原。
类似于:double num=100 //正确,int ---》double,自动类型转换;
对象的向下转型:其实是一个 还原动作
格式:子类名称 对象名=(子类名称)父类对象
含义:将父类对象,还原成为本来的子类