您的位置:首页 > 编程语言 > Java开发

Java中的this和super

2019-04-28 09:32 330 查看

开发工具与关键技术:工具:MyEclipse 10 技术:Java
作者:范子超  撰写时间:2019-04-24

  在Java中使用this引用当前对象,使用super引用父类的对象。
  this代表对象本身,指向自己的引用,可以使用this来调用属性,调用方法,利用this表示当前对象。
可以把this理解为指向对象本身的一个指针。
  this的用法分为3种:

  • 直接引用:用this访问当前对象的成员
  • 形参与成员名字同名时,用this区分
    )
    运行结果:this.sum = 8,this.name = 男生,形参sum = 10,形参name = 女生
  • 引用构造函数

    运行结果:8个男生
      super可以理解为指向自己超类对象的一个指针,超类就是当前类的直接父类。
      super的用法分为3种:
  • 直接引用:用super访问父类对象的成员

    运行结果:this.sum = 8 this.name = 男生 ,super.sum = 8 super.name = 男生
  • 父类与子类存在同名的成员时,用super调用父类的成员

    运行结果:
  • 引用构造函数

    运行结果:10个女生

  上面的几种用法中,this和super的前两种用法比较简单,就第三种用法有一些需要注意的地方。根据需要我做了以下几个总结:[ ]代表可写可不写
  this:指向自己的引用,代表当前对象名(当构造器或方法的形参和成员数据同名时,可以通过this来指向成员变量名)。
  super:可以通过super关键字来实现对父类成员的访问,用来引用当前对象的父类(当父类与子类有同名的方法时,可以通过super来指向父类的方法)。
  this([形参列表]):调用本类中的另一个构造函数(应为构造函数中的第一条语句)。
  super([形参列表]):调用父类的某一个构造函数(应为构造函数中的第一条语句)。
  this()和super()不能出现在同一个构造器中,且同一个构造器只能有一条调用其他构造器的语句,这条语句必须放在构造器的第一行。
  this和super都指的是对象,所以,均不能再static环境下使用。
  从本质上讲,this是一个指向对象本身的指针,而super是Java关键字。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: