理解Java類別中'this'的用法
雖然'this'可能主要指當前對象,但它的具體用法和必要性可能會有些令人困惑。以下是「this」必不可少的場景的細分:
1。消除 Setters 中變數引用的歧義
Setter 方法通常使用「this」來區分具有相同名稱的參數和私有成員變數。透過使用“this.x”,程式碼明確地將參數“x”的值指派給實例變數“x”,從而避免任何歧義。
範例:
public class Foo { private String name; public void setName(String name) { this.name = name; } }
2.將當前類別實例作為參數傳遞
呼叫其他物件上的方法時,「this」允許您將目前類別實例作為參數傳遞。這使得被呼叫的方法能夠存取當前物件並與之互動。
範例:
public class Foo { public String useBarMethod() { Bar theBar = new Bar(); return theBar.barMethod(this); } public String getName() { return "Foo"; } } public class Bar { public void barMethod(Foo obj) { obj.getName(); } }
3.呼叫備用建構子
在建構子中,「this」可用來呼叫相同類別的備用建構子。當您有多個建構函數並希望使用特定值初始化物件時,這非常有用。
範例:
class Foo { public Foo() { this("Some default value for bar"); // Optional additional lines } public Foo(String bar) { // Do something with bar } }
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3