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中文網其他相關文章!