1. this指针
this指针是当前类的一个对象的引用, 是调用当前方法的那个对象的引用。
2. this指针的作用
1、在方法中应用当前对象的属性。
public void setName(String name) {
this.name = name;
}
2、在类的构造方法中调用重载的构造方法(注意:this必须放在构造方法的第一行)
public Person(String n, int a) {
name = n;
age = a;
}
改为:
public Person(String n, int a, String s){
this(name, age);
school = s;
}
3. 例子
Man 类:
public class Man {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Man(String name) {
super();
this.name = name;
}
public void marry(Woman w) {
System.out.println(w.getName() + ", 请你嫁给我");
// 需要一个引用,该引用是Man的一个引用,具体是调用当前方法的那个对象的引用
w.shout(this);
}
}
Woman类:
public class Woman {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Woman(String name) {
super();
this.name = name;
}
public void shout(Man m) {
System.out.println("我愿意嫁给你, " + m.getName());
}
}
Test类:
public class Test {
public static void main(String[] args) {
Woman w = new Woman("Jerry");
Man m = new Man("Tom");
m.marry(w);
}
}
测试结果:
Jerry, 请你嫁给我
我愿意嫁给你, Tom