this关键字只能在方法内部使用,表示对“调用方法的那个对象”的引用。(在方法内部调用同一个类的另一个方法,不必使用this,可以直接调用,当前方法中的this引用会自动应用于同一类中的其他方法。)
this三种主要用法
1、返回对当前对象的引用(也可以将当前对象传递给其他方法)
例:
public class Leaf{ int i = 0; Leaf increment() { i++; return this; } }
2、表示用类的成员变量(用法一的特例)
例:
public class Test { int i = 0; Test(int i) { this.i = i; } }
3、在构造器中调用构造器(this调用本类中的其他构造方法,只能调用一个,并且构造器调用必须置于最起始处)
例:
public class Flower { int petalCount = 0; String s = "initial value"; Flower(int petals){ petalCount = petals; } Flower(String ss){ s = ss; } Flower(String s ,int petals){ this(petals); this.s = s; } }
此外需要注意的是,this不能用在static方法中