2020-04-15 |

类型转换

对于类,有两种类型转换。

向上转型

可以将子类的实例强制转换为其超类。

考虑下面的例子,假设猫是动物的一个子类。

Animal a = new Cat();

Java自动将Cat类型变量升级为动物类型。

向下转型

将超类的对象强制转换为其子类称为向下强制转换。

例子:

Animal a = new Cat();
((Cat)a).makeSound();

这将尝试将变量a强制转换为Cat类型并调用其makeSound()方法。

为什么向上转型是自动的,向下转型是手动的?好吧,升级永远不会失败。但如果你有一组不同的动物,想把它们都扔给猫,那么有可能这些动物中的一些实际上是狗,所以这个过程失败了。

0

发表评论

    评价:
    验证码: 点击我更换图片
    最新评论