1.java 中的this
? ? ? 用類(lèi)名定義一個(gè)變量的時(shí)候宾袜,定義的應(yīng)該只是一個(gè)引用捌袜,外面可以通過(guò)這個(gè)引用來(lái)訪問(wèn)這個(gè)類(lèi)里面的屬性和方法,那們類(lèi)里面是夠也應(yīng)該有一個(gè)引用來(lái)訪問(wèn)自己的屬性和方法納膨报?呵呵勿她,JAVA提供了一個(gè)很好的東西,就是 this 對(duì)象噪生,它可以在類(lèi)里面來(lái)引用這個(gè)類(lèi)的屬性和方法裆赵。
示例圖1
2.具體情況:
a.當(dāng)全局變量跟局部變量重名時(shí),表示使用全局變量(此時(shí)this指代本類(lèi)對(duì)象)
? ? ? ?
示例圖2
b.構(gòu)造方法相互調(diào)用跺嗽,此時(shí)this指代本類(lèi)類(lèi)名
? ? ? ? ? ? ? ? 注意this只能放在構(gòu)造方法第一句
示例圖3
c.把this作為參數(shù)傳遞
? ?當(dāng)你要把自己作為參數(shù)傳遞給別的對(duì)象時(shí)战授,也可以用this页藻。如:
示例圖4
d.注意匿名類(lèi)和內(nèi)部類(lèi)中的this。
有時(shí)候植兰,我們會(huì)用到一些內(nèi)部類(lèi)和匿名類(lèi)份帐,如事件處理。當(dāng)在匿名類(lèi)中用this時(shí)楣导,這個(gè)this則指的是匿名類(lèi)或內(nèi)部類(lèi)本身废境。這時(shí)如果我們要使用外部類(lèi)的方法和變量的話,則應(yīng)該加上外部類(lèi)的類(lèi)名筒繁。如下面這個(gè)例子:
示例圖5
e.在構(gòu)造函數(shù)中噩凹,通過(guò)this可以調(diào)用同一class中別的構(gòu)造函數(shù),如
示例6