黑馬程式設計師 this關鍵字

2021-06-18 06:50:02 字數 1281 閱讀 8597

----------------------

asp.net+android+io開發s

、.net培訓

、期待與您交流! ----------------------

在呼叫方法的時,this可以自動的傳遞乙個隱含引數,該引數是對呼叫物件(及方法呼叫所在的物件)的引用,該引用被稱為this。因此this指向方法正在操作的物件。為理解this的含義首先檢視乙個程式,它建立乙個名為rect的類封裝的矩形的寬和高的資訊,幷包含乙個返回矩形面積的area()方法。

using system;

calss rect

//求矩形的面積

public int area()

}class userect

}在方法內可以直接訪問類的其他成員,而不需要新增任何物件名和類名,因此在area()方法中,語句:

return width*height;

表示直接呼叫物件的width和height的值相乘,然後返回結果,然而該語句也可以寫成如下形式:

return this.width*height;

其中this指向呼叫area()方法的物件,因此this.width指向物件width的副本,而this.heightz指向物件height的副本。例如如果呼叫area()的物件為x,那麼上述語句中的this指向。

也可以在建構函式中使用關鍵字this。在這種情況下,this指向正在構造的物件。例如在rect()中語句

width=w;

height=h;

可以編寫為如下形式:

this.width=w;

this.height=h;

下面給出使用this引用編寫的rect類:

using system;

calss rect

//求矩形的面積

public int area()

}class userect

}this關鍵字有一些重要用途,例如,在c#語法中允許引數名和或區域性變數名和例項變數名相同,此時區域性變數名稱會隱藏例項變數名稱。這是可以通過this指向隱藏的例項變數,從而訪問他。例如下面編寫rect()建構函式的方法是符合語法的。

public rect(int width,int height)

在該例項中,引數的名稱和例項變數的名稱相同,因此隱藏了例項變數。但是可以用this來」揭開「例項變數。

----------------------

asp.net+android+io開發s

、.net培訓

、期待與您交流! ----------------------

黑馬程式設計師 this關鍵字

this 代表所在函式所屬物件的引用,簡單來說哪個物件在呼叫this所在的函式,this就代表哪個物件。this應用 1 用於區分區域性變數和成員變數同名情況。2 當定義類中功能時,該函式內部要用到呼叫該函式的物件時 這時用this來表示這個物件。當不加this關鍵字且成員變數和區域性變數同名時,則...

黑馬程式設計師 final關鍵字特點

asp.net android io開發s net培訓 期待與您交流!final 最終。他是乙個修飾符。1.可以修飾類,變數,函式。2.被final修飾的類不可以被繼承。package biji final public class demo 最終類 無法被繼承。3.被final修飾的函式不能被重寫...

黑馬程式設計師 static靜態關鍵字

靜態關鍵字用於修飾成員。被修飾的成員具備以下特點 1.隨著類的載入而載入。2.優先於物件。3.被所以物件所共享。4.可以直接被類名呼叫。使用注意點 1.靜態方法只能訪問靜態成員。非靜態方法即可以訪問靜態頁可以訪問非靜態。2.靜態方法中不可以寫this,super關鍵字。3.主函式是靜態的。靜態的利與...