情景分析:
1、用于解决成员变量与成员方法中的形参名称相同问题,如下:
public class AnyThing { private String name; private void setThing(String name) { this.name = name;//区分成员变量与形参名相同,this.name指的是AnyThing中的成员变量name。 } }
Ps:事实上,this引用的就是本类的一个对象~
2、作为成员方法的返回值:public class AnyThing { public AnyThing getName() { return this; //返回AnyThing类引用 } }3、this还可以调用类中的构造方法(无参构造方法中使用this调用有参构造方法,且this只能放在第一行):
public class AnyThing { public AnyThing() { //定义无参构造方法 this("this调用有参构造方法"); //使用this关键字调用有参构造方法。注意!只能将this放在第一句!!! System.out.println("无参构造方法"); } public AnyThing(String name) { //定义有参构造方法 System.out.println("有参构造方法"); } public static void main(String[] args) { new AnyThing(); } }运行结果:
4、在静态方法中不可使用this关键字。
Ps:暂时就发现这几点~