this关键字的概述和应用
- A:this关键字特点,代表当前对象的引用。(谁来调用我,我就代表谁)
B:案例演示
- this的应用场景:用来区分成员变量与局部变量重名。
注:成员变量必须由当前对象来调用。
class Demo_Person{ public static void main(String[] args){ Person p1 = new Person(); p1.setAge(23); p1.setName("张三"); System.out.println(p1.getAge() + "..." + p1.getName()); Person p2 = new Person(); p2.setAge(24); p2.setName("李四"); System.out.println(p2.getAge() + "..." + p2.getName()); } } class Person{ private String name; private int age; //this与p记录的是同一个地址值 public void setAge(int age){ this.age = age; } public int getAge(){ return age; } public void setName(String name){ this.name = name; } public String getName(){ return name; } }
控制台输出:张三…23;李四…24
如果是 class Person{ private String name; private int age; public void setAge(int age){ age = age; System.out.println(age); } public int getAge(){ return age; } public void setName(String name){ name = name; System.out.println(name); } public String getName(){ return name; } } 注意: 那么控制台输出的就是: 张三; 23; null...0 因为Java中有就近原则,在方法里面声明了一个局部变量得age,就不用成员变量得age。