Java 中的“this”关键字引用当前正在操作的对象。尽管它看起来很简单,但它的用法对于初学者来说尤其令人困惑。本文旨在阐明何时以及为何在类中有效地使用“this”。
在 setter 方法中,经常会遇到与其对应名称相同的变量私有成员变量。为了区分这些变量并将参数值赋给实例变量,“this.
public class Foo { private String name; public void setName(String name) { this.name = name; // Assigns the parameter "name" to the instance variable "name" } }
将当前类实例作为参数传递给另一个对象的方法时,“this”变得必不可少。
public class Foo { public String useBarMethod() { Bar theBar = new Bar(); return theBar.barMethod(this); } } public class Bar { public void barMethod(Foo obj) { obj.getName(); // Calls the getName() method of the passed Foo instance } }
当一个对象存在多个构造函数时类中,“this(...)”可用于从构造函数内调用备用构造函数。但是,它必须是构造函数中的第一个语句。
class Foo { public Foo() { this("Some default value for bar"); } public Foo(String bar) { // Do something with bar } }
虽然这三个主要场景代表了“this”的最常见用法,但还有一些其他用例可以使用它的实例:
以上是什么时候应该在 Java 类中使用'this”?的详细内容。更多信息请关注PHP中文网其他相关文章!