21xrx.com
2024-12-23 00:28:14 Monday
登录
文章检索 我的文章 写文章
Java中this关键字的使用
2023-06-14 11:02:08 深夜i     --     --
Java this 关键字 成员变量 构造方法 局部变量 同名方法

在Java中,this关键字非常常见,它可以指代当前对象本身。在类中的方法中使用this关键字,可以引用当前对象的成员变量和成员方法。当一个对象被创建后,this就会指向这个对象。

this关键字主要用于以下几个方面:

1. 调用本类中的的构造方法

2. 区分局部变量和成员变量

3. 在一个类中,可以定义多个同名的方法,而使用this关键字可以区分它们

4. 在构造方法中调用另一个构造方法

当调用本类中的构造方法时,可以使用this关键字来调用。例如:


public class Test {

  private int num;

  public Test() {

    this(0);

  }

  public Test(int num)

    this.num = num;

  

}

这个例子中,Test类中有两个构造方法,一个不带参数,一个带一个int类型参数。在不带参数的构造方法中,使用this关键字调用带参数的构造方法。

使用this关键字还可以区分局部变量和成员变量。例如:


public class Test {

  private int num;

  public Test(int num)

    this.num = num;

  

  public void printNum(int num) {

    System.out.println("局部变量num:" + num);

    System.out.println("成员变量num:" + this.num);

  }

}

这个例子中,Test类中有一个带参数的构造方法和一个printNum方法。在printNum方法中,使用this关键字引用成员变量num,使用局部变量num则不需要。

使用this还可以区分同名的方法。例如:


public class Test {

  public void print() {

    System.out.println("无参数的print方法");

  }

  public void print(int num) {

    System.out.println("带参数的print方法,参数为:" + num);

  }

  public void print(String str) {

    System.out.println("带参数的print方法,参数为:" + str);

  }

  public void test() {

    this.print();

    this.print(1);

    this.print("Hello");

  }

}

这个例子中,Test类中有三个同名的print方法,分别带无参数、一个int类型参数和一个String类型参数。在test方法中,使用this关键字调用不同的print方法。

除了上述用法之外,this关键字还可以在构造方法中调用另一个构造方法。例如:


public class Test {

  private int num;

  public Test() {

    this(0);

  }

  public Test(int num)

    this.num = num;

  

}

这个例子中,Test类中有两个构造方法,一个不带参数,一个带一个int类型参数。在不带参数的构造方法中,使用this关键字调用带参数的构造方法。

  
  

评论区

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