6-5 返回值

6-5 返回值

老师,我不理解这里的返回类型是Object ?

我们是想得到Heart类的beat方法,怎么通过Object的到的?能不能解释下具体的返回流程?

正在回答

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

3回答

同学你好,在这个例子中是可以的呢。


但是为了增加代码的灵活性,实现多态,一般情况下,会使用String的父类Object来接收哦~


如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 慕移动ttong 提问者 #1
    1、老师的意思是,内部类里可以定义多个方法,但每个方法的返回值如果不一样的话,各种返回值类型都可以用Object来接收,是吗? 2、如果有无返回值的方法呢?
    2019-06-28 18:51:01
吃吃吃鱼的猫 2019-06-28 19:04:31

同学你好,


1、理解正确。


2、没有返回值可以定义为void。


如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

吃吃吃鱼的猫 2019-06-28 17:48:21

同学你好,Object是所有类的父类。也是beat方法返回值String的父类。


当返回Person.age+"岁的心脏在跳动"这句话时,可以使用Object类型来接收。

http://img1.sycdn.imooc.com//climg/5d15e03f00012dab10150684.jpg


在测试类中,输出方法beat的返回值,实质上,输出的是Object类型的。

http://img1.sycdn.imooc.com//climg/5d15e1580001d32906610088.jpg


但是在输出方法中,传入Object类型的对象会自动转化为String类型再输出,如下图源码中标识所示:

http://img1.sycdn.imooc.com//climg/5d15e1eb0001ff6604530164.jpg

所以直接输出beat方法返回的字符串。


如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 慕移动ttong #1
    如果直接用String来接收行吗?不用Object
    2019-06-28 18:06:19
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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