知方号

知方号

3.5 Java this关键字全解(this关键字调用本类属性、成员、构造方法)

文章目录 3.5 this关键字3.5.1 使用this关键字调用本类中的属性3.5.2 使用this关键字调用成员方法3.5.3 使用this关键字调用构造方法

3.5 this关键字

在Java中,this关键字有几种不同的用途,主要用于以下三个主要场景:

引用当前对象:在非静态方法中,this关键字可以用来引用当前对象,即调用方法的实例。这在需要引用当前对象的成员变量或方法时非常有用,尤其是当成员变量与方法参数同名时。

调用当前类的其他构造方法:在构造方法中,this关键字可以用来调用当前类的其他构造方法,这有助于减少代码重复并提高代码的可维护性。

创建当前类的实例:this关键字也可以用来创建当前类的实例,尽管这种用法较少见。

3.5.1 使用this关键字调用本类中的属性

在Java中,this关键字有多种用途,其中之一就是用来引用当前对象的属性或方法。当类的成员变量与局部变量(如方法参数)同名时,可以使用this关键字来区分成员变量和局部变量。

以下是使用this关键字来调用本类中属性的一个例子:

public class Person { private String name; private int age; // 构造方法 public Person(String name, int age) { // 使用this关键字来区分成员变量和构造方法的参数 this.name = name; this.age = age; } // 一个方法,用来显示个人信息 public void displayInfo() { System.out.println("Name: " + this.name + ", Age: " + this.age); } // Getter方法 public String getName() { return this.name; } // Setter方法 public void setName(String name) { this.name = name; } // Getter方法 public int getAge() { return this.age; } // Setter方法 public void setAge(int age) { this.age = age; } public static void main(String[] args) { Person person = new Person("Alice", 30); person.displayInfo(); }}

在这个例子中:

在构造方法Person(String name, int age)中,this.name和this.age用来引用成员变量,以避免与构造方法的参数name和age混淆。在displayInfo方法中,this.name和this.age用来引用成员变量。在getName和setName方法中,this.name用来引用成员变量。在getAge和setAge方法中,this.age用来引用成员变量。

使用this关键字可以清晰地区分成员变量和局部变量,特别是在它们有相同名称的情况下。

3.5.2 使用this关键字调用成员方法

在Java中,this关键字不仅可以用于引用当前对象的属性,还可以用于调用当前对象的成员方法。这在需要递归调用或者在方法内部需要调用另一个重载的方法时非常有用。

以下是使用this关键字来调用本类中成员方法的一个例子:

public class Counter { private int count = 0; // 递增计数器的方法 public void increment() { count++; } // 递增计数器并打印当前值的方法 public void incrementAndPrint() { increment(); // 调用increment方法来递增计数器 System.out.println("Current count: " + count); } // 重载incrementAndPrint方法,接受一个参数 public void incrementAndPrint(int times) { for (int i = 0; i

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。