java中this關鍵字與方法,Java中this關鍵字與方法

2021-03-04 08:50:00 字數 4066 閱讀 4802

1樓:等禰看流星雨

就普通方法或者屬性而言,寫this和不寫this沒區別。

this主要是用來和super區分的。this呼叫本類的構造方法,super呼叫父類的構造方法。

2樓:匿名使用者

不寫this。如果是有父類的話,就是呼叫父類的構造方法。

3樓:幽默之星

一般情況下寫不寫是差別不在,因為不寫其實本身也是會有this這個指向的,但在一些情況下一定要寫,比如構造初始化內部的變數恰好寫傳入的變數名一樣的時這時內部的變數加上this才可以區分開

java中this關鍵字用法

4樓:匿名使用者

一、this關鍵字主要有三個應用:

(1)this呼叫本類中的屬性,也就是類中的成員變數;

(2)this呼叫本類中的其他方法;

5樓:匿名使用者

1. 當成員變數和區域性變數重名時,在方法中使用this時,表示的是該方法所在類中的成員變數。(this是當前物件自己)如:

public class hello public static void main(string args) } 結果為:s = helloworld!1 -> this.

s = hello2 -> this.s = helloworld!s=helloworld!

在這個例子中,建構函式hello中,引數s與類hello的成員變數s同名,這時如果直接對s進行操作則是對引數s進行操作。若要對類hello的成員變數s進行操作就應該用this進行引用。執行結果的第一行就是直接對建構函式中傳遞過來的引數s進行列印結果; 第二行是對成員變數s的列印;第三行是先對成員變數s賦傳過來的引數s值後再列印,所以結果是helloworld!

而第四行是主函式中直接列印類中的成員變數的值,也可以驗證成員變數值的改變。

2.把自己當作引數傳遞時,也可以用this.(this作當前引數進行傳遞)class a public void print() }class b public void print() }public class helloa }結果為:helloaa from a!

helloab from b!helloaa from a!helloaa from a!

helloab from b! 在這個例子中,物件a的建構函式中,用new b(this)把物件a自己作為引數傳遞給了物件b的建構函式。

3. 有時候,我們會用到一些內部類和匿名類,如事件處理。當在匿名類中用this時,這個this則指的是匿名類或內部類本身。這時如果我們要使用外部類的方法和變數的話,則應該加上外部類的類名。

如:public class hellob catch (interruptedexception ie) {}}}}; // 注意這裡有分號thread.start();}public void run() public static void main(string args) throws exception } 在上面這個例子中, thread 是乙個匿名類物件,在它的定義中,它的 run 函式裡用到了外部類的 run 函式。

這時由於函式同名,直接呼叫就不行了。這時有兩種辦法,一種就是把外部的 run 函式換乙個名字,但這種辦法對於乙個開發到中途的應用來說是不可取的。那麼就可以用這個例子中的辦法用外部類的類名加上 this 引用來說明要呼叫的是外部類的方法 run。

4. 在建構函式中,通過this可以呼叫同一類中別的建構函式。如:public class thistest thistest() public static void main(string args) } 為了更確切的說明this用法,另外乙個例子為:

public class thistest thistest(string str,int age) public static void main(string args) } 結果為:this測試成功25值得注意的是:

(1):在構造呼叫另乙個建構函式,呼叫動作必須置於最起始的位置。

(2):不能在建構函式以外的任何函式內呼叫建構函式。

(3):在乙個建構函式內只能呼叫乙個建構函式。

5.this同時傳遞多個引數。public class testclass void seeit() public static void main(string args) } 結果為:9 10 **中的showtest(this),這裡的this就是把當前例項化的p傳給了showtest()方法,從而就執行了。

6樓:匿名使用者

this 表示本類 this.方法或者屬性 表示自身的方法或屬性

7樓:匿名使用者

this表示最近你使用的物件。。。

8樓:匿名使用者

this 代表當前物件

9樓:紹澍鄢含蕊

按執行步驟

:首先來看main

aa1=new

a("a1");

//建立乙個a類的物件,a1為引用。此時呼叫建構函式

初始化;

a1.func2();

//以a1呼叫func2()

aa2=new

a("a2");

//意義同a1

this.func1();

//this表示a1,因為a1.func2();

這裡的意思是以a1呼叫func1();這裡是第一次輸出;

a2.func1();

//以a2呼叫func1(),第二次輸出

最後返回main(),完畢。

java中怎麼使用this關鍵字?什麼時候可以使用?

10樓:biubiu哩

當你想要引用當前物件的某種東西,比如當前物件的某個方法,或當前物件的某個成員,你便可以利用this來實現這個目的。

比如說吃飯這個方法它是由上帝來定義的,世界上所有的人來執行。吃飯這個行為發生的時候,主體就是在吃飯的這個人,也就是要有人執行吃飯這個行為。 有時候我們需要在乙個行為(方法)裡,能明確知道這個行為是誰來執行的,確切的說就是我要知道誰在吃飯。

function eatsomthing()

在程式語言裡面每乙個定義的方法裡,都會有乙個this關鍵字,這個this關鍵不是由在那兒定義來決定的,而是由誰來執行的決定的。這是判斷this關鍵。

his表示的對像,是這個方法活動的"上下文"。所謂的"上下文",也就是表示當前的這些**的活動範圍,當前的活動(**的執行)在那個對像上的發生的意思。

吃飯這個活動,是在張三這個對像上發生的,則張三是吃飯的下下文。在body裡去查詢的div元素,則body是這個查詢活動的上下文。那這個this,就是這個方法執行活動的範圍了。

方法裡this當前這個方法執行的上下文,但上下文不僅限於是this(就是整體與個體的區別)。

java裡面的this關鍵字是什麼意思

11樓:

this表示類例項本身。

this的用法

1、表示對當前物件的引用!

public class a

}2、表示類的成員變數,而非函式引數,注意在函式引數和成員變數同名是進行區分!

public class a

}3、用於在構造方法中引用滿足指定引數型別的構造器。

public class a

public a()}

java中this的關鍵字用法是什麼?

12樓:

java關鍵字baithis只能用於方法

du方法體內。當乙個物件建立後,zhijava虛擬機器(daojvm)就會給這個物件分配一專個引用自身的指屬針,這個指標的名字就是 this。

this主要要三種用法:

表示對當前物件的引用。

表示用類的成員變數,而非函式引數,注意在函式引數和成員變數同名是進行區分。這是第一種用法的特例,比較常用。

用於在構造方法中引用滿足指定引數型別的構造器(其實也就是構造方法)。注意:只能引用乙個構造方法且必須位於開始。

this不能用在static方法中!有人給static方法的定義:沒有this的方法。

關鍵字廣告的盈利模式,關鍵字廣告廣告

競價廣告,自然排名。關鍵字廣告廣告 關鍵詞廣告屬於關鍵詞推廣。關鍵詞廣告 adwords 是指顯示在搜尋結果頁面的 鏈結廣告。它屬於cpc cost per click 收費制,即按點選次數收取廣告費。關鍵詞廣告 adwords 也稱為 關鍵詞檢索 簡單來說就是當使用者利用某一關鍵詞進行檢索,在檢索結...

如何以關鍵字來搜尋,如何以關鍵字來搜尋WORD文件?

用windows的搜尋阿,檔案型別選定為word文件,文件中的乙個詞或者片語處填尚某某。f3開啟搜尋功能。摸索的內容為 doc 然後高階裡,設定包含內容 尚某某確定 很多朋友遇到過類來似的問題,我也源曾被煩惱過很久,不過經bai過研究,發現了一 du個辦法,曾將zhi此法投稿於 開啟word文件。然...

asp搜尋結果中搜尋關鍵字用紅色顯示(高分)

ind title 看這樣行不?如果不行就把套在外面。ind title 哪個是搜尋關鍵字?使用replace函式 replace 字串表示式,findnreplacewith start count compare 將乙個字串取代 部份字。尋找待取代的原字串 find 若找到則被取代為新字串 re...