为了账号安全,请及时绑定邮箱和手机立即绑定

关于Java中的this和super的使用

关于Java中的this和super的使用

紫衣仙女 2018-08-08 17:05:36
先贴代码:这个地方输出的结果是:a=1b=0----a=4b=0疑问就是:在使用this()调用了Par()的无参构造函数之后,使用了this.Print()进行输出,结果他还输出了b的值,疑惑有两个:1、这个地方b不是还没有被赋值吗?2、这个地方调用的Print()应该是父类的Print()啊,那么按理来说应该不会输出b的值啊,难道在子类中重写了之后调用的都是子类的Print()?刚学Java,求大神解惑
查看完整描述

1 回答

?
米脂

TA贡献1836条经验 获得超3个赞

this实际上是Demo的类指向,可以在父类的构造函数println一下this看一下,对于父类的构造函数,就是上面父类的this(),在父类中调用时会认为是调用父类的构造方法,对于普通函数,会认为是子类this的函数。所以this()会给a新赋值,而this.print()会调用子类的print()


查看完整回答
反对 回复 2018-08-27
  • 1 回答
  • 0 关注
  • 521 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信