网站设计公司建设找人做微信网站
this
在Java中,this 是一个特殊的引用变量,它引用了当前对象实例。当在类的非静态方法或构造方法中使用时,this 关键字指代当前的对象实例。它经常用于区分对象的成员变量和局部变量,或者调用其他重载的方法。
以下是一些使用 this 关键字的示例:
- 引用对象的成员变量:
当一个局部变量与一个成员变量同名时,可以使用this来引用成员变量。 
public class Person {  private String name;  public Person(String name) {  this.name = name;  }  public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  
}
 
测试
public class PersonTest {  public static void main(String[] args) {  Person person = new Person("Alice");  System.out.println(person.getName()); // 输出: Alice  person.setName("Bob");  System.out.println(person.getName()); // 输出: Bob  }  
}
 

- 调用同一类中的其他方法:
可以使用this来调用同一类中的其他方法。 
public class MyClass {public void method1() {System.out.println("Method 1");this.method2(); // 使用this来调用method2()}public void method2() {System.out.println("Method 2");}
}
 
测试
public class MyClassTest {public static void main(String[] args) {MyClass myClass = new MyClass();myClass.method1();}
}
 

- 在构造方法中引用当前对象:
在构造方法中,可以使用this来引用当前正在创建的对象。 
public class Student {private String name;private int age;public Student(String name, int age) {this.name = name; // 引用成员变量namethis.age = age;   // 引用成员变量age}public Student(String name) {this.name = name; // 引用成员变量namethis.age = 18;     // 设置默认年龄为18}public String getName() {return name;}public int getAge() {return age;}
}
 
注意:this 只能用于类的非静态方法中。在静态方法中,不能使用 this,因为静态方法是类级别的,而不是实例级别的。
测试
public class StudentTest {public static void main(String[] args) {Student student = new Student("Alice", 20);System.out.println(student.getName()); // 输出: AliceSystem.out.println(student.getAge());  // 输出: 20}
}
 

