this关键字有三种使用方法:
this.属性名
this.方法名(有参数加参数)
this()
前面两种使用方法中的this表示当前正在内存中运行的对象的引用,后面一个表示构造方法的引用。
//定义一个方法
public void getInfo() {
//这里的this表示使用当前类创建的对象的地址引用
System.out.println(this);
}
package com.bai.demo;
public class Hello {
public static void main(String[] args) {
Person per = new Person();
System.out.println(per);
per.getInfo();
}
}
com.bai.demo.Person@15db9742
com.bai.demo.Person@15db9742
当前对象的引用
private int age;
public void setAge(int age) {
this.age=age;
}
this.setName()调用当前对象的setName()方法
public void setName(String myname) {
name=myname;
}
public void getInfo() {
//这里的this表示使用当前类创建的对象的地址引用
this.setName("王五");
}
package com.bai.demo;
public class Hello {
public static void main(String[] args) {
Person per = new Person();
per.getInfo();
System.out.println(per.getName());
}
}
王五
总结:
两种用法中的this都表示使用当前类创建的对象的地址引用