this关键字概述
当一个对象创建成功之后(执行构造方法之前,对象已经创建成功),虚拟机(JVM)就会动态的分配一个引用, 这个引用指向的就是创建出来的对象,并且该引用的名字就叫做this。
this在不同场合具体指的什么???
a)在构造方法中this指的是什么
this指的就是刚创建出来的对象。
b)在成员方法中this指的是什么
谁调用该方法,那么this指的就是谁。
this的作用是什么???
a)操作成员变量,语法:对象.成员变量名
如果成员变量和局部变量同名的时候,那么必须通过“this关键字”来操作成员变量。
如果成员变量和局部变量不同名的时候,我们可以省略“this关键字”来操作成员变量。
b)调用成员方法,语法:对象.成员方法名(实参列表);
我们可以通过this来调用当前类的成员方法,也可以省略this关键字调用当前类的成员方法。
c)调用当前类的别的构造方法,语法:this(实参列表);
好处:可以实现代码的复用。
注意:a)“this(实参列表)”只能存在构造方法中,并且只能在构造方法有效代码的第一行。
b)“this(实参列表)”切记不能递归调用,否则就会陷入死循环,导致编译错误。
--> 在一个类中,不可能每个构造方法中都调用了“this(实参列表)”。