栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么在用作其他对象类型时必须转换类型为object的引用变量

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么在用作其他对象类型时必须转换类型为object的引用变量

您想知道为什么我们使用显式类型转换。这就是关于继承的一切-

让我来清除此-让我们有两个类 A类B类 。和 B类 是子类的 类A 。这意味着 Class B 具有
Class A的 所有功能,这意味着 Class B 可以做 Class A 可以做的任何事情。因此,如果

 A a = new B();

是完全没有问题,因为 B类 可以做什么 A类 可以做。这里的引用变量 a 是Class A类型的,从中可以调用Class
A的所有方法。现在 B的 Object (new B();)具有 Class A的 所有功能(作为继承),因此 Class A的
所有方法将可以调用。

如果我们像这样逆转条件->

      B b =new A();

不可能,因为可能是 B类 实现了自己的功能(方法和变量),而这些功能不在 A类中 。但是这里引用变量是 B 类型的,所以 B
类的 所有功能都是可以调用的,但是实际对象是 A 类型 的, 因此会发生错误。

类Object的 情况与此相同,因为所有其他Class自动继承 Object Class。

因此,当具有引用变量类型为Class Object的任何对象都需要显式Cast时,因为不能确定该对象包含多少功能。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/610056.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号