物件導向 this 關鍵字

2021-10-17 11:59:55 字數 1075 閱讀 3661

通過this關鍵字可以明確地訪問乙個類的成員變數,解決與區域性變數名稱相同的問題。示例**如下:

public

class

cat}

在上面的**中,構造方法的引數被定義為color,它是乙個區域性變數,在類中還定義了乙個成員變數,名稱也是color。在構造方法中如如果使用color,則訪問區域性變數,但如果使用this. color,則訪問成員變數。

具體示例**如下:

public

class

catpublic

void

run(

)}

構造方法在例項化物件時被jvm自動呼叫,在程式中不能像呼叫其他方法一樣呼叫構造方法,但可以在乙個構造方法中使用「this([引數1,引數2…])」的形式呼叫其他構造方法。

package study.example;

//定義兩個過載的構造方法

public

class

catpublic cat (string color)

}

下面建立測試類example,呼叫有引數的構造方法,如下所示。

package study.example;

public

class

examp1e

}

執行後的輸出結果:

無引數的構造方法執行了…

有引數的構造方法執行了…

從執行結果中可以看出,先執行了無引數的構造方法,之後再執行有引數的構造方法。

注意,使用this關鍵字呼叫其他構造方法時只能出現在構造方法中,並且只能位於構造方法的第一行且只能出現一次

將呼叫的建構函式放在後面執行,編譯時就會提示錯誤。因為其他初始化要先執行,否則會破壞函式中的其他語句,覆蓋我們需要傳進去的引數,而且我們定義的函式是封裝起來的。

另外,不能在兩個構造方法中使用this相互呼叫,否則會出現編譯錯誤

物件導向關鍵字

this關鍵字 this是一種特殊的引用,指向當前物件 this的兩種使用方法 1 如果發生區域性變數可以成員變數命名衝突時,可以通過this.成員變數名的方式區分例項變數和區域性變數 2 乙個構造方法中需要呼叫同乙個類的另乙個構造方法,可以通過this 的方式呼叫,但this 必須要書寫在第一行 ...

物件導向 final關鍵字

final 最終,作為乙個修飾符。1 可以修飾類,函式,變數。2 被final修飾的類不可以被繼承,為了避免被繼承,被子類複寫功能。3 被final修飾的方法不可以被複寫。4 被final修飾的變數時乙個敞亮只能賦值一次,既可以修飾成員變數,也可以修飾區域性變數。當在描述事物時,一些資料的出現值是固...

物件導向程式設計 static關鍵字

物件導向程式設計 static關鍵字 static關鍵字總結 class static 2,靜態方法 a,和靜態變數相同,靜態方法同樣可以在不建立物件下,通過類名直接呼叫.b,在靜態方法裡只能直接呼叫同類中其它的靜態成員 包括變數和方法 而不能直接訪問類中的非靜態成員。這是因為,對於非靜態的方法和變...