this關鍵字在Java中引用目前物件的實例。它有以下作用:1. 從非靜態方法中存取物件屬性或方法;2. 在建構子中呼叫其他建構子;3. 從靜態方法中存取非靜態方法;4. 區分局部變數和物件屬性;5 . 內部類別中存取外部類別。
this關鍵字在Java中的意義
簡介
this關鍵字在Java中是一個特殊變量,它引用目前物件的實例。
作用
1. 從非靜態方法存取物件屬性或方法:
this關鍵字允許從非靜態(實例)方法中存取目前物件自己的屬性或方法。例如:
<code class="java">public class Person { private String name; public void setName(String name) { this.name = name; } }</code>
2. 在建構子中呼叫其他建構子:
this關鍵字也可以在建構子中用來呼叫其他建構子。這使您可以使用不同的參數來初始化物件。例如:
<code class="java">public class Person { public Person(String name) { this(name, 0); } public Person(String name, int age) { this.name = name; this.age = age; } }</code>
3. 從靜態方法中存取非靜態方法:
雖然靜態方法不能直接存取非靜態屬性或方法,但可以使用this關鍵字來呼叫非靜態方法。例如:
<code class="java">public class Person { private static void printName(Person person) { person.getName(); } public void getName() { System.out.println(name); } }</code>
4. 區分局部變數和物件屬性:
如果局部變數和物件屬性具有相同的名稱,則this關鍵字可以用來明確引用物件屬性。例如:
<code class="java">public class Person { private String name; public void setName(String name) { this.name = name; } public void printName() { String name = "局部变量"; System.out.println(this.name); // 引用对象属性 } }</code>
5. 內部類別中存取外部類別:
在內部類別中,this關鍵字引用內部類別實例,而this.外部類別引用外部類別實例。例如:
<code class="java">public class OuterClass { private String name; public class InnerClass { public void printName() { System.out.println(OuterClass.this.name); } } }</code>
以上是java中this關鍵字意義的詳細內容。更多資訊請關注PHP中文網其他相關文章!