this的本质就只“创建好的对象的地址”,我们在内存分析中,new一个对象的时候,具体的步骤是这样的
1、分配对象空间,并将对象成员变量初始化为0或空
2、执行属性值的显式初始化
3、执行构造方法
4、返回对象的地址给相关的变量
按照以上步骤,早构造方法调用之前,对象已经创建。因此,在构造方法中也可以使用this代表“当前对象”。
this最常的用法:
1、在程序中产生二义性之处,应使用this来指明当前对象。
1.1普通方法中,this总是指向调用该方法的对象、
1.2构造方法中,this总是指向正要初始化的对象。
2、使用this关键字调用重载的构造方法,避免相同的初始化代码。但只能在构造方法中用,并且必须位于构造方法的第一句。
3、this不能用于static方法中。因为内存分析中,Static方法是类方法,先于任何的实例(对象)存在。即Static方法在类加载时就已经存在了,但是对象