成員變量跟局部變量重名的問(wèn)題
成員變量跟局部變量指的都不是一個(gè)對(duì)象,也就是說(shuō)他們雖然變量名字相同,但是指的不是同一個(gè)東西。這應(yīng)該是堆棧的問(wèn)題吧,何來(lái)的優(yōu)先級(jí)呢?我是這么理解的。
成員變量跟局部變量指的都不是一個(gè)對(duì)象,也就是說(shuō)他們雖然變量名字相同,但是指的不是同一個(gè)東西。這應(yīng)該是堆棧的問(wèn)題吧,何來(lái)的優(yōu)先級(jí)呢?我是這么理解的。
2016-07-31
舉報(bào)
2016-07-31
在java中,局部定義的變量能夠屏蔽全局范圍內(nèi)的變量。
在局部使用某個(gè)變量的時(shí)候JVM會(huì)優(yōu)先找和當(dāng)前使用位置"近"的變量的的定義!
如果在局部定義了和全局變量一樣的名字,我們使用的過(guò)程中,調(diào)用全局變量的話,會(huì)使用this關(guān)鍵字輔助。
class A{
int i=10;
void f(){int i=100;
System.out.println(this.i);//全局 10
System.out.println(i);//局部 100
}
}