学习this关键字之前,先来看下对象创建的过程
1、分配对象空间,并将对象成员变量初始化为0或空
2、执行属性值的显示初始化
3、执行构造方法
4、返回对象的地址给相关的变量
this关键字的本质:创建好的对象的地址。由于在构造方法调用前,对象已经创建,在构造方法中可以使用this代表“当前对象”。
1、程序产生二义性的地方,使用this指明当前对象。普通方法中,this指向调用该方法的对象;构造方法中,this指向正要初始化的对象。
2、使用this关键字调用重载的构造方法,避免相同的初始化代码,但只能在构造方法中使用,并且必须位于构造方法中的第一位。
3、this不能用于static方法中。
public class Student { public String name; public int age; public Student() { } public Student(String name) { this.name = name; } public Student(String name,int age) { this(name); this.age = age; } public void study() { System.out.println(this.name); } public static void main(String[] args) { Student student = new Student("小明",20); student.study(); } }
原文:https://www.cnblogs.com/ysdrzp/p/9483282.html