課程
/后端開發
/Java
/Java入門第二季 升級版
成員變量跟局部變量指的都不是一個對象,也就是說他們雖然變量名字相同,但是指的不是同一個東西。這應該是堆棧的問題吧,何來的優先級呢?我是這么理解的。
2016-07-31
源自:Java入門第二季 升級版 8-5
正在回答
在java中,局部定義的變量能夠屏蔽全局范圍內的變量。
在局部使用某個變量的時候JVM會優先找和當前使用位置"近"的變量的的定義!
如果在局部定義了和全局變量一樣的名字,我們使用的過程中,調用全局變量的話,會使用this關鍵字輔助。
class A{int i=10;void f(){int i=100; System.out.println(this.i);//全局 10 System.out.println(i);//局部 100}}
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
2 回答成員變量和局部變量重名問題
7 回答局部變量能與成員變量重名嗎?
2 回答成員變量和局部變量的問題。
1 回答成員變量和局部變量
3 回答局部變量與成員變量重名時,在方法里面如何調用成員變量
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-07-31
在java中,局部定義的變量能夠屏蔽全局范圍內的變量。
在局部使用某個變量的時候JVM會優先找和當前使用位置"近"的變量的的定義!
如果在局部定義了和全局變量一樣的名字,我們使用的過程中,調用全局變量的話,會使用this關鍵字輔助。
class A{
int i=10;
void f(){int i=100;
System.out.println(this.i);//全局 10
System.out.println(i);//局部 100
}
}