这段代码中为什么要强行转换成Cat类型呢?

这段代码中为什么要强行转换成Cat类型呢?

正在回答

登陆购买课程后可参与讨论,去登陆

4回答

虽然判断类型匹配,但是通过强转之后才能调用该类型的特有的属性和方法啊,之前的判断只是保证强转不会出错

  • 天命阿朱 提问者 #1
    非常感谢!
    2017-02-06 21:42:31
  • 请问可以用instanceof比较吗?
    2017-03-22 20:19:58
  • instanceOf只能判断类型的匹配性,但不能判断相等性,在这里用不太恰当。
    2017-03-23 09:40:24
喜欢做梦的鱼 2017-02-05 21:02:59

课程中的设计思路是:前面那个if是判断对象是否相等。后面是在对象不等的情况下判断属性是否相等。因为对Cat进行比较,所以要判断是否是Cat类,如果是的话,进行强制转换,得到Cat类的对象。

  • 提问者 天命阿朱 #1
    进行强转得到Cat类对象?不是很明白。都已经判断是Cat类了,还为什么要强转?
    2017-02-05 23:01:52
喜欢做梦的鱼 2017-02-05 18:15:54

可以把完整代码贴出来看一下,以便于更清晰的了解你的代码思路

  • 提问者 天命阿朱 #1
    这个是课程里的代码呢。。。
    2017-02-05 19:51:28
喜欢做梦的鱼 2017-02-04 21:37:25

因为传入的参数是Object类型,必须转换成Cat类型才能进行比较。如果解决了你的疑惑,欢迎采纳,祝学习愉快!

  • 提问者 天命阿朱 #1
    可是if的括号不是已经判断他们两个类型相等了吗
    2017-02-04 22:10:31
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师