首頁  >  文章  >  Java  >  java中this關鍵字意義

java中this關鍵字意義

下次还敢
下次还敢原創
2024-04-29 02:15:261028瀏覽

this關鍵字在Java中引用目前物件的實例。它有以下作用:1. 從非靜態方法中存取物件屬性或方法;2. 在建構子中呼叫其他建構子;3. 從靜態方法中存取非靜態方法;4. 區分局部變數和物件屬性;5 . 內部類別中存取外部類別。

java中this關鍵字意義

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn