java中super和this
博客专区 > Yemon 的博客 > 博客详情
java中super和this
Yemon 发表于1年前
java中super和this
  • 发表于 1年前
  • 阅读 0
  • 收藏 0
  • 点赞 2
  • 评论 0

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

    super代表的是父类、超类,用在继承中的子类中;this代表对象本身,用在本类中。
    super访问的是被子类隐藏的父类的属性或被覆盖的方法,而this访问的是同一类中的成员。
    super调用的是父类中的某一个构造函数,而this调用的是本类中其他的构造函数。
    super和this都需要位于构造器执行体的第一行,否则编译不通过。但是他们两个不能同时存在,因为this要调用其他的构造函数,而其他的构造函数也有super语句,这就形成了冲突,编译不过。
    用this可以调用一个构造器,不可以调用两个。
    如果子类中没有显示调用父类的任何构造器(任何super和this的形式),系统会默认调用父类无参构造,如果父类没有无参构造,那么就会编译出错。
    super调用的父类方法或属性,必须是public或者protect的,否则因为访问权限的问题也会出错。
    this解决变量命名冲突和不确定性的问题,例如参数名和变量名相同的时候,需要使用this来区分。
    直接用this()加上参数就可以调用对应参数的类构造器,用此方式最多可以调用一次其他构造器。
    this最大的作用就是在一个方法中调用同类中的其他方法和属性。
共有 人打赏支持
粉丝 11
博文 320
码字总数 22799
×
Yemon
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: