this的用法
this到底代表什么呢?
哪个对象调用了this所在的函数,this就代表哪个对象,就是哪个对象的引用。
例如:成员变量与参数同名时,我们常用 this.成员变量名=参数名 进行赋值,this代表了当类的对象。
开发时,什么时候使用this呢?
- this调用本类中的其他方法(但是一般都会省略,直接用方法名()即可))
- this 用于构造函数间的调用:
调用格式:this(实际参数);
this对象后面跟上 () 调用的是本类中的对应参数的构造函数。(由括号中的参数类型和个数确定调用的到底是哪个构造方法)- this对象后面跟上 . 调用的是成员属性和成员方法(一般方法);
注意:用this调用构造函数,必须定义在构造函数的第一行。因为构造函数是用于初始化的,所以初始化动作一定要执行。否则编译失败。
Java中super()与this()的区别
- super()是从子类的构造方法调用父类的构造方法
this()则是在同一个类内调用其他构造方法- super()与this()均必须放在构造方法内的第一行,因此,super()与this()无法同时存在用一个构造方法内
- super()和this()都指对象,不能再static环境中使用,包括静态方法和静态初始化器
- this代表当前对象名(函数的形参与类中的成员变量同名,用this来指明成员变量名)
- super引用当前对象的直接父类中的成员(super.变量名 或 super.方法名)