(1)返回调用当前方法的对象的引用
public class Leaf{
private int i = 0;
public Leaf increment(){
i++;
return this;
}
public void print(){
System.out.println("i="+i);
}
public static void main(String[] args){
Leaf l = new Leaf();
l.increment().increment().increment().print();
Leaf x = new Leaf();
x.increment().increment().print();
}
}
(2)在类的构造方法中调用类的其他构造方法
public class Person{
private String name;
private int age;
private String sex;
public Person(){
sex = "male";
}
public Person(String _name){
this();
name = _name;
}
public Person(String _name,int _age){
this(_name);
age = _age;
}
}
(3)在方法参数与成员变量相同时,用于区分参数名和成员变量名
public class Person{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}