21xrx.com
2024-12-22 23:04:52 Sunday
登录
文章检索 我的文章 写文章
Java中this关键字的用法及实例解析
2023-06-12 00:29:39 深夜i     --     --
Java this 关键字 实例 方法 构造方法 参数 示例代码 编程

当我们在使用Java语言编写程序时,经常会用到this关键字,它代表了当前对象或当前实例的引用。那么this关键字具体有哪些用法呢?本文将对Java中this关键字的用法及实例进行解析。

1. this表示当前对象或当前实例

在Java中,this关键字代表了当前调用该方法的对象或者当前的实例。例如,在一个类中重载了一个方法,如果要在方法中调用该类的另外一个方法,就可以使用this关键字来代表当前的实例,以此来调用该方法。

2. this作为构造方法

在Java中,类的构造方法可以使用this关键字来构造当前对象。例如,在一个类中定义了多个构造方法,在其中一个构造方法中使用了this关键字来调用另外一个构造方法,就可以省略代码的编写,并且在实例化对象时也可以省略一些参数的输入。

3. this作为方法参数

在Java中,this关键字也可以作为方法参数,传递给其他方法进行调用。例如,在一个类的方法中,需要将当前实例作为参数传递给其他方法进行处理,就可以使用this关键字。

4. 实例分析

下面给出一个示例代码,来展示this关键字的多种用法:

public class ThisDemo {

  private String name;

  private int age;

  public ThisDemo(String name, int age)

    this.name = name;

    this.age = age;

  public void sayHello() {

    System.out.println("Hello, my name is " + this.name + " and I am " + this.age + " years old.");

  }

  public void setAge(int age)

    this.age = age;

  public void setName(String name)

    this.name = name;

  public void changeAge() {

    this.setAge(this.age + 1);

  }

  public void changeName() {

    String newName = "New " + this.name;

    this.setName(newName);

  }

  public static void main(String[] args) {

    ThisDemo demo1 = new ThisDemo("John", 18);

    ThisDemo demo2 = new ThisDemo("Jane", 20);

    demo1.sayHello(); //输出:Hello, my name is John and I am 18 years old.

    demo2.sayHello(); //输出:Hello, my name is Jane and I am 20 years old.

    demo1.changeAge();

    demo2.changeName();

    demo1.sayHello(); //输出:Hello, my name is John and I am 19 years old.

    demo2.sayHello(); //输出:Hello, my name is New Jane and I am 20 years old.

  }

}

从这个示例代码中,我们可以看到this关键字的用法,分别是代表当前对象、作为构造方法、作为方法参数等等。在实际编程中,我们可以灵活运用this关键字,来实现更加简洁优雅的代码。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复